Harness Engineering 工程学:将 AI Agent 从玩具变为实用工具

模型从来不是最难的那部分。从来不是。
其实,在“Harness”这个词诞生之前,很多团队就已经在埋头搭建类似的东西了。那时候没有现成的术语,大家做的都是同一件事:摸着石头过河,然后撞上一堵又一堵无形的墙。
比如,在“长运行Agent”这个概念被正式提出前,我们就已经在构建能稳定运行数小时、产出正确结果、中断后还能无缝恢复的工作流。在相关论文发表之前,我们就在实践DAX查询的程序化校验、反馈回路和LLM-as-Judge。
这些实践并非源于文献,而是被现实需求硬生生逼出来的。
但最令人困扰的,或许不是“墙”。墙会拦住你,让你知难而退。而我们遇到的,更像是一扇看不见的玻璃门——你以为前方畅通无阻,直到“砰”的一声撞上去,才发现自己早已头破血流。前沿探索的代价,往往就是这些伤疤。
走在最前沿 ≠ 走在最前沿且不受伤。前沿本身,就是伤疤的来源。
更让人无奈的是,Demo往往跑得太漂亮了。利益相关方看着流畅的演示,很难理解背后那些复杂的“脚手架”为何必要。
“Demo不是好好的吗?为啥搞这么复杂?”
问题在于,万一它坏了呢?六周后,生产环境发生数据漂移,开发环境无法完美复现,排查无从下手——到了那时,谁还会记得当初那个漂亮的Demo?
在没有漂移检测和可靠工程框架的情况下,盲目地给Prompt加示例、堆砌工具、拆分子Agent,就像试图把果冻钉在墙上。非确定性行为,叠加“再加一个功能试试”的心态,再配上缺失的监控,无异于在布满纸割伤的酒精池里反复横跳。这不能叫“走在最前沿”,这更像是一种工程上的“自残”。
给东西命名,就是给门上装把手
共享术语的价值就在于此。有了共同的语言,下一支团队就不必再撞上那扇玻璃门。他们能看到门,找到把手,然后从容地走进去。
这就是Harness Engineering为行业带来的东西。它不是在给先行者颁发安慰奖,而是为所有人建立了一套共同语言,用来讨论如何将Agent工作流可靠地送上生产环境,无需每次都从零开始解释。
现在,这件事有名字了。
那个包裹大语言模型、将其原始文本输出转化为可靠系统行为的工程化运行时,就叫Harness(外壳/挽具)。而设计、构建和运维这个Harness的学科,就叫Harness Engineering(外壳工程学)。
这个学科,作为一个被命名的概念,诞生仅约12个月;但作为一种工程实践,它已经存在了大约三年。
一句话说清楚 Harness 是什么
Harness是包裹LLM的工程化运行时,负责把模型的原始文本输出转化为可靠的系统行为。
具体来说,Harness承担了六件模型自身无法独立完成的事:
| # | 职责 | 一句话解释 |
|---|---|---|
| 1 | 上下文组装 | 决定每次调用模型时,它能看到什么信息。 |
| 2 | 工具契约 & 校验 | 定义模型能做什么,不能做什么,并确保调用合规。 |
| 3 | 记忆 & 持久化状态 | 在多次调用之间记住发生了什么,维持对话或任务状态。 |
| 4 | 可观测性 | 监控产出:包括链路追踪、漂移检测、评估关卡等。 |
| 5 | 恢复机制 | 出错时怎么办:提供回滚、重试、重放等策略。 |
| 6 | 编排调度 | 协调多个模型或多个Agent之间的协同工作。 |
这里需要澄清一个最常见的误解:
Harness 不是 try-catch 包一层,防止模型挂掉。
它是一个精心设计的工程化环境,让一个有能力的模型能够完成它自己原本无法胜任的、更庞大、更持久、更自主的任务。
一个好的驾驶舱,其价值不只是防止飞行员坠机,而是让飞行员能够执行那些在糟糕驾驶舱里根本不可能完成的任务。
记住这个区别。大多数初次接触这个概念的人,都容易在这里产生误解。
这个学科有明确的“出生日期”
大多数工程学科没有确切的诞生时刻,但Harness Engineering有——2024年5月。
当时,普林斯顿的一个研究团队(Yang, Jimenez, Wettig, Lieret, Yao, Narasimhan, Press)发表了一篇论文《SWE-agent: Agent-Computer Interfaces Enable Automated Software Engineering》,后来被NeurIPS 2024收录。
他们做了一件事后看来显而易见、但当时却颇具启发性的事:他们锁死了模型。 使用固定的GPT-4 Turbo,不进行微调,也不玩复杂的Prompt技巧。
然后,他们在模型和代码库之间搭建了薄薄的一层,称之为Agent-Computer Interface(ACI)。整个实验只改动这一层。ACI仅包含四个组件:
- 文件搜索最多返回50条结果
- 一个有状态的文件查看器,一次看100行,并记住位置
- 编辑时运行Linter,直接拒绝语法有问题的补丁
- 上下文窗口管理器,随着交互记录增长而压缩旧信息
仅此而已。同一个模型,同一个权重,同一个基准测试。
结果,在SWE-bench基准测试上的成绩从3.8%提升到了12.47%。三倍以上的提升,全部来自于接口设计的改进。
这个数字本身令人震撼,但更震撼的是其背后的含义:SWE-agent团队通过可控实验证明,模型周围的运行时环境,其重要性可能超过模型本身。
在此之前,Agent研究的一个隐含假设是“更好的Agent需要更好的模型”。而ACI的消融实验表明:即使锁定模型,通过设计更好的接口,也能制造出更强大的Agent。
这篇论文,堪称Harness Engineering学科的基础设计文档。之后出现的各种Harness模式、工作流设计、协议栈讨论乃至生产环境回顾,都可以看作是对SWE-agent所证明原则的泛化和延伸。
1947 年的驾驶舱研究:一切思想的源头
当然,SWE-agent的作者并非凭空发明了这个原则。他们明确标注了思想来源:人因工程学(Human-Factors Engineering)。这条思想脉络的历史比计算机本身还要悠久。
1947年,Paul Fitts和Richard Jones发表了《460起飞行员操作失误事故的因素分析》。这项研究受美国空军航空医学实验室委托,起因是战后一系列被简单归因为“飞行员失误”的坠机事故。
Fitts和Jones采访了飞行员,检查了驾驶舱。他们发现的并非飞行员失误。
他们发现:
- 相同的控件,在不同飞机上的布局完全不同;
- 看起来一模一样的操纵杆,功能可能天差地别;
- 在高压力情境下,经验丰富的飞行员会稳定地误触错误的控制器——因为驾驶舱的设计从未考虑过人类在应激状态下的实际反应模式。
他们的结论彻底碘伏了整个领域:
别再去训练更好的操作员了。重新设计环境。驾驶舱才是变量。
这个结论催生了人因工程学,其思想经由Don Norman的《设计心理学》(1988)、Atul Gawande的《清单革命》(2009)以及外科手术和ICU的清单实践得以传承——这些实践通过改变环境而非苛求操作者,实实在在地拯救了无数生命。
SWE-agent论文所做的,正是将LLM置于“操作员”的位置,并套用了同一套逻辑。ACI就是为Agent重新设计的驾驶舱。
这意味着,Harness Engineering被嵌入了一段拥有八十年历史、且成果可度量的学术传统之中。它不是一时兴起的潮流,而是那条被反复验证的原则的最新实例:
当操作员不断重复同一个错误——环境才是变量。
“机械同理心”:赛车手的智慧,程序员的方法论
驾驶舱是一个绝佳的视角。另一个同样能引起软件工程师共鸣的视角,叫做机械同理心(Mechanical Sympathy)。
这个词由传奇赛车手Jackie Stewart提出。他说:你不理解车怎么工作,你就开不快。
Martin Thompson在2011年左右将这个理念引入软件工程领域,并由此创造了LMAX Disruptor——它证明了,只要代码尊重底层硬件(CPU缓存行、分支预测、内存层级、伪共享、缺页中断)的实际工作方式,就能在普通硬件上实现每秒数百万次的操作处理。
机械同理心 = 编写适配底层运行机制的代码,而不是与之对抗。
Harness Engineering,就是将机械同理心应用在一个全新的底层之上。这个新底层 = LLM + 上下文内存 + 注意力预算。
和所有底层一样,它也有有名字的失败模式:
| 传统软件(CPU底层) | AI Agent(LLM底层) |
|---|---|
| 写代码要适配 CPU 怎么跑 | 写 Agent 要适配 LLM 怎么跑 |
| …内存怎么跑 | …上下文内存怎么跑 |
| …磁盘怎么跑 | …注意力预算怎么跑 |
| 需规避:缓存未命中、分支预测失败、伪共享、缺页 | 需规避:上下文腐烂、上下文恐慌、迷失中间、U 型注意力 |
这四个AI侧的失败模式,都是真实的、有明确定义的、可测量的,生产环境中的工程师每天都在与之搏斗:
- 上下文腐烂(Context Rot):当上下文窗口被陈旧或低信息量的token塞满后,模型性能会可观测地下降。
- 上下文恐慌(Context Panic):Agent在上下文压力下开始跳过步骤、短路计划过程。
- 迷失中间(Lost-in-the-Middle):一个被反复验证的现象——对于长Prompt,模型对中间部分信息的注意力显著低于开头和结尾。
- U 型注意力(U-Shaped Attention):对上述现象的更广义概括。
两年前,这四个术语一个都不存在。 而现在,它们都有了对应的Harness补救模式:上下文压缩、工作记忆纪律、检索排序、结构化笔记、子Agent隔离等。
至此,三条时间线串联在一起:
- 2011年左右:硬件层面的机械同理心教会程序员尊重缓存行和内存布局。
- 2024年5月:SWE-agent标志着机械同理心从CPU跨越到了LLM。同一个洞见,新底层,让Agent性能翻了三倍——且未改动模型。
- 现在:Harness Engineering正是这一洞见向生产级Agent系统的全面泛化。
三代同样的核心思想,在越来越高的抽象层次上重复上演:CPU → Agent-Computer Interface → 完整的Agent运行时。
从实践到学科:2025末到2026初的术语大合流
搭建Harness的实践,远比它的名字古老。
在2024到2025年,所有真正在交付Agent系统的团队,早就在模型周围搭建了工具层、上下文组装管线、校验器、记忆分层、可观测链路和恢复回路。任何在真实代码库上深度使用过Claude Code、OpenAI Codex或Cursor的人都会清楚——光靠模型本身是远远不够的。
但那时缺乏共享词汇。每个团队各有各的叫法:“wrapper”、“agent loop”、“编排层”、“运行时”。每个人都觉得自己搞的是一套独门秘籍。
然后——命名的时刻到来了。
时间线复盘
2025 年下半年:Anthropic 率先播种术语
当大多数团队还在使用“wrapper”这类泛称时,Anthropic已经开始在正式的工程文章中使用“harness”这个词。
- 2025年9月28日,《Effective Context Engineering for AI Agents》将上下文工程命名为一个独立的工程关注点,拥有自己的模式,独立于Prompt工程,并成为Harness Engineering的关键组成部分。
- 2025年11月25日,《Effective Harnesses for Long-Running Agents》更进一步,将Harness本身命名为一个独立的工程产物,附带一套独立的设计问题集。
2026 年 2 月:Mitchell Hashimoto 一锤定音
HashiCorp联合创始人Mitchell Hashimoto在一篇关于个人AI采纳历程的博客中,使用“harness engineering”来描述通过改进Harness而非Prompt来系统性修复Agent错误的实践。
Anthropic创造了这个词,Hashimoto则将其确立为一个学科的名称。一锤定音。
2026 年 2 月 11 日:OpenAI 正式跟进
OpenAI在一篇关于使用Codex Agent纯靠代码构建百万行生产代码库的文章中给出了正式定义。他们指出,主要的工程挑战并非模型能力,而是设计模型周围的环境、反馈回路和控制系统。
这篇文章让术语机构化了——三家顶尖AI实验室中,有两家开始在公开工程文章中使用同一个词。
2026 年 2-3 月:行业跟进
Martin Fowler的网站、LangChain、Cobus Greyling等纷纷发表跟进文章,将这一学科提炼成工程师可以直接引用的公式。
其中,LangChain压缩出了一个最精炼的版本:
Agent = Model + Harness
模型提供原始智能。Harness则负责管理记忆、工具、重试、人类审批、可观测性——让模型能够专注于推理本身。
2026 年 3 月 23 日:Anthropic 发布参考架构
《Harness Design for Long-Running Application Development》——这是迄今为止该学科最完整的参考设计。它不是一篇短文,而是一份完整的参考架构,涵盖了上下文组装、记忆分层、评估关卡、恢复回路以及长运行Agent所需的全部运维模式。
如果你只读一篇关于Harness设计的文档,就读这篇。
2026 年 4 月:术语普及
在各大AI工程团队、厂商博客和生产环境回顾中,“harness engineering”已成为标准工作用语。
总结
- 作为有名字的学科:约12个月大。
- 作为工程实践:大约3岁。
什么归 Harness,什么归模型?
设计一个有用的Agent,关键在于精确地知道Agent的哪些维度由模型负责,哪些由Harness负责。
一个最清晰的模型包含六个维度:
Agent = 感知 + 大脑 + 记忆 + 规划 + 行动 + 协作
| 维度 | 谁负责 | 一句话 |
|---|---|---|
| 感知(Perception) | Harness | 接收和预处理输入:文本、图片、结构化数据、工具响应。 |
| 大脑(Brain) | 模型 | 推理引擎。通常由Harness路由到不同的模型家族:快速模型处理提取,较强模型负责编排,最强模型处理高风险决策。 |
| 记忆(Memory) | Harness | 独立的工程学科:通常分为短期、工作、长期三层,与推理引擎解耦。 |
| 规划(Planning) | Harness 模式 | 要么采用ReAct循环(每步推理+行动),要么采用Plan-and-Execute(先分解任务,可并行的并行执行)。 |
| 行动(Action) | Harness 驱动 | 越来越趋向于“代码即行动”:Agent编写一段短脚本,批量调用工具、在代码内处理重试逻辑,一次性返回干净结果。 |
| 协作(Collaboration) | 协议层 | 由四个开放标准在不同层次上进行治理。 |
四个开放标准,各管一层:
| 协议 | 全称 | 管什么 |
|---|---|---|
| MCP | Model Context Protocol | Agent 和工具之间的垂直接口。 |
| A2A | Agent-to-Agent Protocol | Agent 和 Agent 之间的水平接口。 |
| AG-UI | Agent-User Interface | Agent 和人类用户之间的前端接口。 |
| Agent Skills | Open Standard | 能力获取接口,定义Agent如何加载新技能。 |
其中,MCP由Anthropic开源,并于2025年12月捐赠给Linux基金会。Agent Skills也作为开放标准公开发布在 agentskills.io。
结语:一句话总结
Harness Engineering 是把机械同理心应用在 LLM 这个新底层上的工程学科。
它让Agent从“Demo跑通了”进化到“生产环境跑不坏”。
它的思想源头可以追溯到1947年的驾驶舱研究,它的关键实验证据来自2024年的SWE-agent论文,而它作为一个有名字的学科,则诞生于2025-2026年的术语大合流。
所以,下次再有人和你讨论AI Agent时,别只问“用哪个模型”。
不妨问一句:你的 Harness 是怎么设计的?
如果对方愣住了——你可以把这篇转给他。
相关攻略
4月23日,京东大药房在合作伙伴大会上,重磅发布了其创新的“AI全球找药”服务。此次发布标志着京东正全力运用人工智能技术,破解医药信息不对称的难题,致力于让患者,尤其是面临罕见病用药、跨境购药等复杂需求的用户,能够更便捷、更安心地找到所需药品。 这项服务的强大能力,源于其坚实的底层技术架构。它深度整
人工智能是让机器模拟人类智能的科学技术。它分为专精特定领域的弱人工智能和具备通用智能的强人工智能。AI已广泛应用于医疗、金融、交通等行业,辅助诊断、优化风控、推动自动驾驶发展。作为驱动变革的核心力量,AI将持续演进并融入社会经济,其发展也伴随伦理与社会挑战。
AI软件名称是其核心功能的精炼概括,需阐明用途并突出优势。该技术已广泛应用于医疗辅助诊断、金融风险管控及零售精准推荐等多个关键领域。了解其含义与应用场景,有助于把握技术价值并做出明智选择。
Excel页眉怎么删除?三种实用方法详解 在Excel表格编辑与打印过程中,页眉信息有时并非必需,反而可能影响数据的清晰呈现。一份简洁明了的表格,往往能提升阅读体验与专业度。本文将系统介绍三种常用的Excel页眉删除技巧,步骤简单易懂,帮助您快速清理页面元素,让表格更符合使用需求。 方法一:通过页面
哔哩哔哩推出官方视频剪辑软件“必剪”,集录屏、剪辑、投稿功能于一体,旨在降低B站创作者的视频制作门槛。与市场上提供丰富模板的同类工具不同,“必剪”未强调模板化,可能鼓励更多原创内容,但也需在基础剪辑体验上证明其便捷性。此举为移动剪辑工具市场带来新变数。
热门专题
热门推荐
随着人工智能大模型与机器视觉技术的深度融合与产业升级,一个根本性的挑战愈发关键:底层视觉数据基础设施的能效水平,直接决定了上层AI应用的成本边界与识别精度的上限。近期,Robo ai (NASDAQ: AIIO) 旗下专注于AI基础设施的Neurovia AI,在第九届国际安全与国家风险防范展(IS
数字货币成功变现需掌握关键技巧:理解市场动态与主流币种联动,选择安全高流动性平台,制定明确风险目标和交易策略,严格执行止损与分散投资。市场持续变化,保持学习与适应能力是长期稳健交易的基础。
618购物节是电竞玩家升级装备的良机。华硕TUFGaming系列的战杀27与小金刚显示器凭借FastIPS面板、高刷新率、精准色彩及丰富电竞功能,以高性价比满足不同玩家对帧率与画质的追求,成为热门选择。
移动端二战空战游戏以机械浪漫与硬核操作吸引玩家。多款作品各具特色:或精细还原战机与基地经营,或重现太平洋战场任务,或融合弹幕射击与昼夜战术,或侧重战机收集养成,或提供割草式爽快体验。它们以历史氛围带玩家重返决定历史的天空。
《和平精英》中,“安V收车币”作为一种新兴交易方式,为玩家获取稀有车辆皮肤提供了安全便捷的渠道。它满足了玩家个性化需求,提升了游戏体验与沉浸感。参与交易需选择正规平台,合理规划消费并遵守官方规定,以保障自身权益。这一模式活跃了游戏经济,丰富了玩家的资源选择。





