DAG 把意图切成原子叶子,每片都带 CAS 保证,且必须在计数前断言自己的后置条件。
harness 的解剖
可靠性是一块块工程出来的
这些都不住在模型里。它们是环绕模型的系统,而它们之和,是一个你能放心托付真活儿的 agent。
八个系统
把 harness 拆开,逐件来看
角色与模型解耦。conductor 规划 DAG,确定性 dispatch 驱动它,executor 并行跑叶子。详见下文。
工作被编译成原子叶子的有向图。CAS 状态切换在并行下守住正确性;并发按模型调校,不让任何东西打滑。
原始事件经一道“做梦”过程被提炼成分层记忆。每一次事实写入都先过克制闸门与校验器,才被允许落库。
一张底座统一能力、行为基因与习得事实:可检索、可迁移、能彼此喂养。详见下文。
所有 Model-Context-Protocol 工具收敛到单一路由。schema 按需加载,不再撑爆每次 prompt,省下大量且持续的 token。
一个预飞模式:能读、能推理,但不能写。源码落地的规划、工具调用闸门,以及每轮重审的台账,落任何改动之前先想清。
一池轮换的搜索源,加上把网页剥到只剩信号的抽取。研究与检索,无需手动喂 URL。
不变量被钉成可证伪的契约。与契约冲突的实现让路;被代码证伪的契约也让路,并留痕在案。
痛点 → 解法
agent 崩坏的六种方式,被逐一工程封死
朴素 agent 循环的每一处弱点,在 harness 里都有一个结构性的答案——不是礼貌地请模型守规矩,而是一套让越界根本不可能发生的机制。
任何点名的字段、表或符号,落笔前都先对实时 LSP 与代码图谱核验。证据路由——结构层测绘、事实层坐实,标识符绝不靠猜。
grounding 闸盯住需要权威的论断,把它们绑到来源;领域词表让法定数字与领域事实无从编造。
hashline 编辑在行级校验每个补丁;LSP 实时喂入符号与类型。放错位置的编辑会被当场抓住并修正,绝不提交。
driftDetector 盯住重复、给走神分类,并在 token 烧在死循环上之前,把运行拉回上一个良好锚点。
每片叶子计数前必须断言自己的后置条件;高风险接缝交给专职反驳结果的对抗式 verifier。检查不过 → 回流,绝不静默放行。
四种力量,一桩任务
角色与模型解耦
诸Wright各司其职。没有谁被绑死在某一个模型上;那种绑定是运行时的选择,每桩任务都重新决定。
把意图拆成原子叶子的 DAG,并决定什么跑、按什么顺序跑、每片叶子要证明什么。重推理——这是设计大脑。谁规划得最好就换谁:Opus、Codex、GLM。
Opus · Codex · GLM从 DAG 取出就绪的叶子,按拓扑分层,在有界并发下铺开——一路用 compare-and-swap 守住状态诚实。确定性 harness 代码,回路里没有模型。是那个绝不放偏移过去的运行时。
确定性 · 无模型在分配到的模型上跑单片叶子——工作的原子:一段码、一次改动或一组工具调用,自带故障边界。廉价、且大规模并行:DeepSeek 铺到 256 路、MiMo 8 路跑多模态,并发按模型调校,谁也不打滑。
MiMo · DeepSeek一个跨模型的怀疑者——指向哪个 provider 都行、绝不绑死一个——它的职责是攻击结果、而非盖章放行。它在"绿还不够"处激发:高风险接缝、契约边界、phase 末尾。发现真问题,conductor 静默升级到更强模型并重规划;没有,则这片叶子计数。默认关闭、单轮、有上限——是一面镜子,不是仪式。
模型无关 · 跨模型一个 executor,三种叶子
conductor 给每个节点打上 kind;dispatch 把一层并排铺开,每片叶子各按各的方式跑——最可靠的那次模型调用,是你根本不必发的那次。
单次模型调用——纯文本生成,不带工具。
现场 in-process,经 parallel 原语,不落数据库。
带工具的子 agent——可多轮、可调工具。
由配置的 agent runner 驱动一整个子循环。
确定性 CLI——完全不用模型。
command runner 跑节点的 command;exit 0 即 done。
设计即安全:agent 叶子缺 runner → 降级 inproc(无工具、不改文件)并告警;command 叶子无可跑之物 → 直接 failed,绝不静默。
↩检查不过 → 回流给 conductor,绝不静默放行
钩子与缝
建在 pi 事件之上——可注入、可配置
可被你扩展的可靠性。三个钩子骑在 pi 的事件流上;另有五道缝,编织在 harness 各处——每一处都是你自己的代码、配置或 domain pack 可以接入的地方。
pi 事件级钩子
工具执行闸:危险命令防护 + 工具白名单。没有你未授权的东西能跑起来。
元认知安全网。检出原地打转 → onSpinning;逃出卡死循环 → onRecovered。threshold 与重复注入可调。
在 push --force、rm -rf 这类不可逆操作触达 shell 之前就拦下。
wright 可注入缝
validateFactWrite + namespaces,reject-by-default。domain pack 覆写"什么允许落库"。
观测消息输出;lexicon + action 可注入。domain 注入法定词表,让答案带来源。
onFailure / onMiss / onCorrection / onSpinning / onRecovered / onGrounded——把 runtime 信号接进你自己的 sink。
resolveRoleModel + .wright/config.json:conductor、executor、leaf、dream 各绑一个你可替换的模型。
/mcp add 运行时注册 server;mcp_search 路由到它。加新工具无需碰网关。
此处讲概念 · 文件级细节在 docs。