
过去两年,大模型相关的工程名词层出不穷:Prompt Engineering、Context Engineering、RAG、Agent……
不少人会本能地把 Harness Engineering 也归到这一类“新名词营销”。但如果从工程视角往回看,它其实对应的是大模型从“会说话”走向“会干活”之后,系统层面不可再回避的硬骨头。

用一句话来概括它的本质:在一个 AI Agent 里,除了模型本身以外,几乎所有决定它能不能稳定把事做成的东西,都属于 Harness 的范畴。
也就是说,Agent = Model + Harness,而 Harness Engineering 研究的就是这套“模型外骨骼”的设计与迭代方法。
在只有聊天机器人的时代,大家遇到的典型问题是:
于是 Prompt Engineering 登场,核心是通过角色设定、Few-shot 示例、结构化输出约束、链式思维等手段,让模型“听明白你要它干什么”。
这解决的是“表达问题”,但它默认前提是:只要你说清楚,模型就能给出一个还不错的单轮答案。
当应用从“问答”升级为“Agent 执行任务”,问题很快变成:不是“这句话答得对不对”,而是“整个任务有没有真的跑完、跑对”。
这时,单靠 Prompt 已经远远不够了,模型必须接触到:
Context Engineering 的职责,就是在有限的上下文窗口里,把最合适的信息,在最合适的时间,喂给模型。 RAG、检索排序、上下文压缩与筛选、长对话记忆策略,都属于这一层。
如果说 Prompt 工程指的是“指令”,那么 Context 工程指的就是“输入环境”。
当 Agent 真的开始“自己干活”后,新问题密集冒头:
这时候再堆 Prompt、再扩上下文,收益非常有限,因为问题已经不在模型本身,而在“模型外面的系统”。
Harness Engineering 关注的正是这一层:如何通过一整套运行时机制,让 Agent 在真实、长链路、低容错的环境中,持续、可观测地把任务做对。

三者的关系,可以理解为一个层层递进的包含关系:Prompt Engineering ⊂ Context Engineering ⊂ Harness Engineering
一个比较成熟的 Harness,大致拆成了以下六个层次:

这里的上下文,已经不限于“给模型看的几段文字”,而是一个结构化的信息空间:
关键不在于“信息多”,而在于相关、分层、可控。
一线实践中,很多团队会把长篇的大一统说明文档拆解成极精简的导航说明和按主题划分的架构文档,Agent 每次只加载必要片段,而不是一次性把所有规则塞进上下文里挤爆窗口。
如果说模型是“会推理的大脑”,工具系统就是它的“手脚”与“传感器”。
这一层至少要解决:
现实中的经验是:工具太少,Agent 做不了什么事;工具太多,它又会乱用。Harness 工程就是要为特定业务,设计一套既够用又“拿得稳”的工具面板。
大多数失败的 Agent 都有一个共性:想到哪做到哪。
成熟的 Harness 会把任务拆解成相对固定的执行阶段,例如:目标澄清、信息收集、方案生成、自检验证、失败分支处理等。 关键是:让 Agent 总在一条“有护栏的轨道上”前进,而不是依赖一次性 Prompt 的临时发挥。
在长链路任务中,仅靠上下文窗口很难完整承载所有状态。Harness 需要显式管理当前进度、重要中间结果以及跨任务的长期记忆。 本质是让 Agent 在有限的上下文窗口外,拥有一个可治理的外部记忆空间。
没有观测与评估,所有“自动化”最终都会演变成“自动放大错误”,这里包括:自动化测试、独立评估 Agent 打分,以及日志追踪。
一个关键经验是:生产者与评估者角色要分离。让同一个 Agent 写代码又给自己打分,往往会出现系统性乐观偏差;把规划、实现、验收拆给不同的模块,质量才会显著提升。
真实世界里,没有一种 Agent 能一跑到底不出错。Harness 工程更理性,它接纳失败,然后设计清晰的权限边界、前置后置校验,以及失败时的自动恢复路径(重试、退回、请求人工接管)。
这套机制决定了当错误不可避免地发生时,系统是悄无声息地“烂掉”,还是能在可控范围内“优雅降级”。
这组实验的亮点不在于产出有多大,而在于人类工程师基本不写业务代码,而是拆解目标、设计环境和约束、迭代 Harness 本身。
他们踩过的坑非常典型:
可以看出,他们真正投入精力的对象,是如何让这套运行时系统变得越来越可控。
Anthropic 的案例则更偏向“长任务控制”:
这种架构换来的是:从“跑出一个勉强 Demo 的版本”跃迁到“跑出一个真能用的系统”。
从以上工程实践中,我们可以得出两条清晰的结论:

模型层面的军备竞赛,终有天会进入边际收益递减阶段。而真正决定一家企业 AI 落地能力的,将是有能力为关键业务场景设计出一套可观测、可约束、可恢复的 Agent 运行系统。
换句话说,下一阶段的工程竞争,很可能不再是“谁的 Prompt 写得更好”,而是“谁的 Harness 设计得更稳、更精细、更贴合业务”。