第 7 章:殊途同归,还是各表一枝
出处
来源:原网页 · 状态:已读 · PDF:book2-comparing.pdf p.34–36
一句话
它们是殊途同归,也是各表一枝。 同归:模型不可靠,harness 才是秩序来源。各表一枝:Claude Code 更信运行时纪律,Codex 更信显式控制层。笼子的位置,决定了系统以后会演化成什么样。
核心概念
先说同归。两边都不把模型当可直接托付的执行体,并共同承认:prompt 不等于控制全部;工具须受约束;长会话要做状态治理;本地规则须进系统;多代理须分工与核验。双方已走出「模型一强、系统问题自消」的阶段。会合点是把 harness 当成真正的控制层,模型则是其下最不稳却最能产出的部件。
再说各表一枝。若据此说两者本质相同,过于粗糙。Claude Code 主轴:主循环、运行时连续性、compact / 工具编排 / 中断恢复、技能 / hook / 核验接入现场规则。Codex 主轴:模块边界与控制层显式化、instruction 作 fragment、工具作 schema、执行边界作 policy、会话作 thread / rollout / state、本地规则与 hook 作结构化资产与事件系统。前者像从机械经验里塑出来的系统,后者像从制度设计里塑出来的系统。差别不在目的,而在结构。
如果非要给它们起一个更难听但更准确的名字:两种 harness 政体。Claude Code 近运行时共和制——权力多在主循环与现场调度,秩序靠现实协商,制度服务会话现场。Codex 近控制面立宪制——权力先写入类型、片段、策略、线程与事件,运行时判断在明确框架内展开。harness 从来不只是技术组件堆积,它也是一种权力分配方式。谁定边界、谁解释状态、谁握最终执行解释权,都会落在架构上。
比较的价值在少犯两类错,而非选边。一是误以为抄功能表即可,须先判定主要矛盾是长会话失控,还是规则来源散、权限边界糊。二是把两边顺眼特性无判断地拼装。工程上最危险的往往不是取舍,而在没有取舍。更稳妥:怕现场失控就先夯 runtime heartbeat;怕制度失真就先把 instruction、tool、policy、state 显式化;主矛盾稳住再补另一侧。
另有提醒:许多后起系统两边都没做实,却把 bootstrap、角色、技能、工作区文本堆进 prompt,靠「信息更全」补结构。短期能跑,长期 token 烧得快、工作语义不稳。主要靠 prompt 堆叠撑上下文的系统仍停在中间地带——已意识到遗忘与漂移,开始加 memory、skills、compact,但若治理仍是「先注入,再抢救」,就尚未决定把秩序放在哪一层。
关键洞察
两条路径并无天然高下。真正问题是准备把不确定性关进哪一层笼子。笼子的位置,决定了系统以后会演化成什么样。只学运行时纪律,容易变成经验过强、制度不足;只学显式控制层,容易变成制度漂亮、现场发虚。混着用且不取舍,两边都没有。
个人思考
Book 1 第 9 章十条原则在这里收成一句更政治的话:harness 是权力分配。仓库里 Anthropic 的 SDLC 把人放在闸门上,Ng 把人放在改规格的中圈——都是在说权力不该交给最会说话的那个部件。这一章把同一判断从「人 vs 模型」扩到「运行时 vs 控制层」。第三方系统看起来功能齐全,往往只是还没决定笼子在哪。