一、问题之根:为何Harness成了“隐形霸主”?
传统代理工程里,模型只管“想”,真正决定成败的往往是外层那团“胶水代码”——何时调用工具、如何校验输出、失败如何恢复、状态如何流转、何时停止。这便是Harness(驾驭层)。LangChain那句“If you’re not the Model, you’re the Harness”一针见血。
问题在于:这些逻辑高度耦合在控制器代码里,像把铁路信号、时刻表、检票口全焊死在火车头里。想改一条规则?牵一发而动全身。想做消融实验(ablation)看哪个模块真有用?难如登天。想把这套策略复用到另一个场景?几乎重写。
Higress团队一针见血地指出:Harness从未被当作“干净、可研究的对象”。它一直是“偶然的副产品”。
二、论文之破:把策略从代码里“解放”出来
论文提出两个核心物件:
-
NLAH(Natural-Language Agent Harnesses):一份可编辑的自然语言文档(.md足矣)。里面写明:任务阶段划分、角色分工、状态外化规则、校验门(validation gates)、恢复策略、停止条件、产物契约(artifact contracts)。
举例:“在委托子代理前必须先写状态文件到STATE_ROOT”;“未拿到目标文件证据前不得finalize”。
-
IHR(Intelligent Harness Runtime):一个共享的智能运行时,像一位“读文档的聪明管家”。它把NLAH这篇“操作手册”翻译成具体行动:调用哪个agent、更新什么状态文件、触发哪个校验、什么时候交接。
关键分离:
策略层(意图、流程、规则)→ 自然语言文档(人类可读、可改、可版本)
机制层(精确执行、沙箱、解析器、工具适配)→ 仍留在确定性代码里
这就像把“宪法”(高层原则、价值、流程)从“刑法细则”(精确执行条款)里抽出来。宪法可公开辩论、修订;细则由专业机构严格执行。
实验数据很硬核:在SWE-bench Verified、Terminal-Bench 2.0、OSWorld上,IHR执行的NLAH性能与原生Code Harness相当(甚至在某些场景持平或略胜),但策略描述从6万多token压缩到约2900 token。消融实验只需改文档,不动代码,就能测出“文件持久化状态”是稳健正贡献(+2.6%~+13.9%),而“多候选搜索”“上下文压缩”常是负收益或中性。
三、Higress团队的解读:赞在何处?忧在何方?
Higress团队(王晨)解读精准且务实:
大赞之处:
- 把Harness从“黑箱胶水”变成“科学表示对象”。第一次可以像做科学实验一样,对策略模块做leave-one-out消融,归因清晰。
- 可审计、可复用、可移植。换一个.md文件,策略就变了,适合长周期、多场景的代理系统。
- 揭示了工程实践的残酷真相:不是模块越多越好。很多“看起来聪明”的技巧(多候选、激进压缩)实际拖后腿。文件外化状态比依赖模型记忆可靠得多——这点对我们做长期记忆、上下文治理的人尤其扎心。
清醒的忧虑(团队点得狠):
- 自然语言天生模糊。跨阶段协调机制遵循度明显低于“契约式”机制(后者可即时验证)。模型解读偏差可能悄悄改变行为。
- 外置策略虽降低开发门槛,却扩大了攻击面:提示注入、恶意工具嫁接、供应链污染……都需要溯源、审查、沙箱三重防护。
- IHR原型仍有token与调用开销,生产化尚需打磨。
Higress作为API网关团队,特别在意真实世界部署的边界。他们隐含地指出:NLAH + IHR提供了策略层,但生产环境还需要强基础设施层(沙箱隔离、权限控制、可观测性、流量治理)。这正是Higress能发力的点——在agent工具调用、状态流转、API边界上做“运行时策略增强”。
四、费曼式再解:这到底改变了什么?
想象你开一家“AI打工仔公司”:
- 传统方式:每个打工仔(模型)都背着一本厚厚的《公司作战手册》+《应急预案》,还缝在衣服里。想改规则?得给每个仔重新缝。
- NLAH方式:公司出一本《标准作业流程手册》(.md),清晰写着“第一阶段做什么、第二阶段交给谁、什么情况下必须写日志、什么证据才能交差”。每个仔配一个“现场主管”(IHR),主管拿着手册指挥,仔只管执行精确动作(工具调用、文件读写)。
结果:
- 规则改了,只印新手册就行(可编辑性)。
- 想知道“日志模块到底值不值”?把那一页撕掉跑一遍实验就知道(可消融)。
- 新人来了,直接给手册+主管培训(可复用)。
- 但手册若写得含糊,主管和仔可能各有各的理解(模糊性风险)。
这正是Harness Engineering从“隐性手艺”变成“一等公民学科”的开端。策略不再是代码里的副作用,而是可版本、可审计、可科学优化的对象。
五、对我们实操的启示
一直在深潜代理基础设施(KLIP系列、代理流、上下文治理、RAO自演化)。这篇工作直接击中痛点:
- 可观测性与可控性:把高层策略外置为自然语言 + 文件状态,天然利于长期运行、事后审计、人类介入。
- 演化友好:想试新策略?改文档即可,不用动底层代码。配合你的“Context Mode”与记忆长城,或可做出更优雅的自适应harness。
- 生产落地:纯IHR还不够。需要像Higress这样的网关层,在工具调用、状态流转、权限边界做强约束与观测。沙箱 + 策略文档 + 网关三层,才是真实可信的代理系统。
当然,风险也要正视:自然语言的“各取所需”问题,必须用严格的产物契约 + 沙箱 + 人工审查来对冲。
最终拍板:Higress团队的解读,既看到了论文的范式突破(策略文档化 + 运行时解释),也清醒指出了其边界(精确性、攻击面、生产基础设施)。这不是“用自然语言取代一切代码”的乌托邦,而是在正确边界上把Harness从黑箱变成白箱的一次重要尝试。