别人的最佳实践,凭什么到你这儿就变成了负债?
这是本专题的收官课。前面把 DeepSeek Harness 的每一层都拆开看过,这一集不做新拆解,做一次收拢,回答三个问题:
唯一必须记住的判断标准:删掉框架还成立的设计,才值得抄。
| 维度 | 判据 | 本集的用法 |
|---|---|---|
| 真源 | 权威副本放哪,能不能恢复 / 分叉 / 检索 / 回放 | 先问「出事时我拿哪份东西当证据」 |
| 扩展 | 第三方怎么加能力,走几条路 | 回答「一个新能力上线要过几道审批」 |
| 安全 | 防出事靠劝还是靠机制 | 回答「系统会不会有没人盯着的时间段」 |
| 可抄性 | 是接口语义还是基础设施 | 五件可抄 vs 三件陷阱的分水岭 |
| 成熟度 | 敢不敢把未完成写进仓库根目录 | 读任何新项目先看这一张表 |
| 动机 | 这套工程最终替谁产生价值 | 决定了可复现与好用谁优先 |
| 产品 | 真源 | 扩展模型 | 安全依靠 | 一句话立场 |
|---|---|---|---|---|
| DSH | append-only 事件日志(zstd 压缩 JSONL),恢复 / 分叉 / 检索 / 回放共用一份 | 一切皆插件:219 个包、49 个分组,树外 bundle 安装 | 机制层:运行时断言、类型边界、溯源鉴权、单调证明 | 运行时优先,可证明性压倒交付速度 |
| Claude Code | JSONL 会话文件(事后记录型),支撑恢复与查看 | hooks + MCP + 子代理与插件 | 权限确认框 + 生产监控回馈(断路器阈值来自真实账单数据) | 产品单体,数据驱动止损 |
| Grok Build | 内存对话为主,异步落盘为从,落盘失败不打断对话 | 70 多个 crate 静态组合(本地快照统计),编译期定形 | Rust 类型系统 + 确认流程,模板编译期固定 | 性能与静态确定性优先 |
| Codex CLI | JSONL 会话 rollout 文件 | MCP 为主的外接能力 | 审批模式分级 + OS 级沙箱(Seatbelt / Landlock) | 沙箱优先,默认不信任执行环境 |
| OpenCode | 本地文件存储的会话数据 | Provider 抽象 + 插件,多模型接入 | 权限确认为主 | 开源 TUI 优先,模型可换是第一需求 |
证据边界: DSH、Claude Code(还原源码与官方材料)、Grok Build 三列基于本地仓库逐行核对;Codex CLI 与 OpenCode 两列基于已公开资料整理,未逐行核对,取舍时请自行验证。表中 Codex 一列成文较早,其 Rust 源码后来另开一章逐行拆解,结论以那一章为准。
表看完先记住一件事:五家没有对错,只有立场。 DSH 的特殊在于它把可证明排在了好用前面——这是运行时的立场,也是它文档和测试体量的根源。
这五件的共同点:都是接口语义层面的决定,跟语言、框架无关。一个周末能搭出毛坯。
为什么好抄: 它们都不要求引入任何基础设施。事件日志是一个文本文件加一个函数,输入语义是三个枚举值,双路径压缩是两个触发条件,溯源鉴权是给每段内容贴标签,单调 Guard 是放行前比一下数字。没有一样需要团队扩编。
| 陷阱 | 真实成本 | 个人 / 小团队替代方案 |
|---|---|---|
| 219 个包的插件树 | 每个能力都要切出 Service Definition / Provider / Consumer 三角色,配齐 README、测试、文档配对;DSH 有 49 个包分组、268 份 README | 一个 plugins/ 文件夹 + 一条约定 |
| 双语三文件文档配对 | 英文 + 中文 + 记录两侧 blob hash 的 .i18n.yaml,改一侧不重新确认配对就 CI 红;每次文档改动双倍起步 | 先写一种语言,翻译留给需要时 |
| per-file 100% 覆盖率门禁 | DSH 自己都写了 2026-06-11-mutation-testing 笔记承认覆盖率只证明代码被执行过 | 关键路径高覆盖 + 整体阈值,别定 100% |
抄机制不抄框架。判断标准:这个设计删掉框架还成立吗?成立就能抄。
对这张总表和两份清单,有四条使用约束:
它是开发者预览版,根 AGENTS.md 开头第二节就写着预发布立场(第 5-7 行,核对日期 2026-08-13):
Remove this section at the first tagged release. With no external consumers, prefer the correct foundation over compatibility shims: rename or repackage freely and update every reference together. Backends reject old on-disk formats. SQLite uses monotonicSCHEMA_VERSION;dsh-sessionkeepsSESSION_FORMAT_VERSIONat 0 with no compatibility promise.
大意:第一个正式版本发布时删掉本节。当前没有外部使用者,宁要正确的地基也不做兼容垫片;后端直接拒绝旧的磁盘格式,会话格式版本停在 0,不做任何兼容承诺。
另有两处明确延后:
packages/mcp/mcp-client/README.md 第 111 行原文:「Tools are the only bridged MCP capability — Resources and Prompts have no harness consumer and are deferred.」apps/ 下只有 cli 与 web 两个应用。这三条不算黑点,算取舍:地基没干透之前不浇二楼。
四种产品模式 = 四份 preset 配置文件。极简模式核心配置(apps/cli/config/agent-presets/minimal/agent.cordis.yml 第 1-13 行):
# The `minimal` agent preset: a fixed-prompt, two-tool coding-agent composition.
# The persona is the complete system prompt, so global identity, Web orientation,
# tool guidance, and later assembly listeners cannot add prompt text. Runtime
# context snapshots are suppressed for this preset, and the model composes only
# persistent `bash` and `str_replace_editor`. Context compaction is absent.
- id: persona
name: '@deepseek-ai/dsh-persona'
config:
text: You are a helpful software engineer assistant.
complete: true
includeRuntimeContext: false
读一下这份配置在做什么:
complete——任何插件都加不了字;bash 和 str_replace_editor;根目录 BENCHMARK.md 推荐用 Python SDK 跑这个 minimal 变体做基准测试,每个任务独立 workspace 和会话。
动机解释: 模型厂商需要一台标准化、可复现、无压缩干扰的测量仪来评自家模型,顺手把它做成了通用运行时。Anthropic 做 Claude Code 是为了让模型服务产品;DeepSeek 做 DSH 有一半是为了测量模型本身。立场不同,工程观自然不同。
往后看,agentic RL 训练和模型评测对这种可回放、可证明的 harness 只会更饥渴——这可能是这套重机制路线最先兑现价值的地方。
回到演示卡片,按手头真实项目的现状勾选:已有的机制勾上,没有的留空。然后:
这是本集唯一的通用判据。操作方式很简单:看到一个精巧设计,先在脑子里把它的框架依赖全部剥掉,看剩下的是不是一条独立成立的规则。
所以五件可抄的都是接口语义,三件陷阱都是基础设施。
评估真源方案时,别问用什么格式存,问审计时拿什么出来。
三种都能跑,但在审计和回放上的能力差着一个数量级。这个差会在你第一次需要向客户解释「当时到底发生了什么」的时候一次性兑现。
安全维度的选择,本质是回答一个问题:这个系统会不会有没人盯着的时间段?
机制层路线(运行时断言、类型边界、溯源鉴权、单调证明)没有这个退化点,代价是前期投入肉眼可见地贵。这不是技术先进与否的问题,是系统运行形态的问题。
看一个项目的成熟度,先看它敢不敢列这张表。敢写未完成的,通常也敢写 bug。
落地建议:把这张表放在 AGENTS.md 这类人和模型都会第一眼读到的文件里,与给人看的文档并列。在这里写清楚哪些没承诺兼容,比在文档站写十页免责声明都管用。
延伸建议: 你自己的项目同样该有一张,哪怕只有三行。它对外是预期管理,对内是范围护栏。
五家 harness 没有对错,只有立场:产品单体、静态组合、沙箱优先、多模型开放、可证明运行时。抄的时候认机制不认框架:事件日志真源、三种输入语义、双路径压缩、溯源鉴权、单调 Guard 五件随便搬;219 包插件树、双语文档配对、逐文件全覆盖三件没有专职团队别碰。判断标准一句话:删掉框架还成立的设计才值得抄。
本页内容整理自 xueai.miyang.cn(小山学堂 · 洛小山《学 AI 产品,从入门到精通》),音频为二次演绎配音版,文字稿与解读部分由本站在原课程内容基础上整理与延展。