模型不是壁垒,Harness 也不是
10 小时前 / 阅读约12分钟
来源:36kr
2026年海外开发者社区提出Harness概念,用于管理AI大模型运行环境等。概念走红后引发争论,有人认为其被吹捧过度,有人认为其至关重要。随着模型进步,Harness不断演变,与模型共同进化。

先说明下,这篇文章有点费脑。

适合对AI趋势感兴趣、想搞懂2026年开发者圈在吵什么的人,得稍微跟着动动脑筋。

咱们从一个大家都有过的感受说起:用过 AI 写代码的人,多半经历过同一条情绪曲线:第一天觉得这玩意儿要革命,第三天开始骂街。

它会跑偏、反复犯同一个错、忘了你三分钟前说的要求,甚至项目做到一半,就突然跟你说「大功告成」。

大部分人的第一反应:这模型不行,换一个更强的;但 2026 年初,海外开发者社区突然认为,也许问题在模型外面那一圈东西。

他们给这圈东西起了个名字,叫 Harness。

01

Harness本意是马具,就是缰绳、马鞍、嚼子、马蹄铁那一套,用来驾驭马匹的装备。用在 AI 这儿,意思也差不多。比如:管理大模型的运行环境、工具接口、验证机制、反馈回路、约束规则等等。

这个词的走红,有一条很清晰的时间线:

2026年2月5日,HashiCorp联合创始人Mitchell Hashimoto发了一篇博客。这人很厉害,做过Terraform,全球开发者都在用的基础设施工具,在基础设施圈子里算是教父级人物。

他在博客里分享了自己用AI编程的经历,写到第五步时说了一句话,大意是:Agent每次犯错,别在提示词里加一句「请你下次注意」,没用。

不如去改环境,写一条规则、加一个脚本,让它从结构上就没法再犯同样的错;他管这叫Engineer the Harness(去设计那套驾驭系统)。

六天后,OpenAI跟进了。2月11日,他们发了一篇实验报告,标题直接用了Harness Engineering。

报告里说,三个工程师从空仓库开始,五个月没写一行手动代码,全靠OpenAI的编程Agent(Codex Agent生成),最后仓库里攒了约一百万行代码,合并了1500个代码合并请求,产品还有真实的日活用户。

这三个人五个月里没干啥别的,就是设计让Agent写代码的环境。

之后,Martin Fowler站台、LangChain(做AI应用开发框架的公司)跟进,一个月之内,这个词就从一篇个人博客,变成了开发者圈的黑话。

那Harness具体能干嘛?最直观的理解就是:让Agent干不了坏事、记得住东西、做完有检查、搞砸能回滚。

比如:约束这件事,OpenAI的实验里,工程师要求代码必须遵守分层架构,每个模块只能引用相邻层。注意,这不是在提示词里写一句「请遵守分层架构」,那没用,Agent下一秒就忘。

他们把这条规则写成了CI流水线里的自动化代码检查,Agent敢违反,代码合并请求直接过不了。一条程序化的规则,比提示词里一万句叮嘱都管用。

再比如记忆,大模型天生只有一种记忆,就是上下文窗口,满了前面的内容就被挤掉。OpenAI的做法是在仓库里维护一套结构化文档,设计规范、架构决策、执行计划全放里面,Agent随时能查。

说白了,别指望金鱼能记住事儿,你得在鱼缸外面贴满便签。

最有意思的是验证。Agent做完一件事,你问它「做得怎么样」,它几乎永远会说「我做得很好」,这不是Anthropic的段子,是真的。

Agent评估自己的产出,总是盲目自信,哪怕在人看来质量很一般。怎么办?

Anthropic的解法有点像生成对抗网络(一种让两个AI互相博弈的技术):做事的和评判的分开,一个Agent写,另一个专门挑毛病,选手和裁判不能是同一个人。

还有纠错。Anthropic在做长时间运行的Agent时发现,Agent跑一半掉进死胡同是常事,硬做只会越错越远。他们的做法简单粗暴但有效:

每次改动都走Git,卡住了就用Git回滚到上一个干净状态,然后直接换一个新Agent接手,只给它一张交接单,写清楚前面做了什么、接下来该做什么。

不指望金鱼能自我修复,直接换一条新的,再塞给它一张纸条,这些加起来,就是Harness。

听起来好像也没什么了不起,无非是规则、文档、测试、回滚,都是软件工程里早就有的东西。

但看一个数字你就懂了:LangChain用同一个模型,提示词一个字没改,只调整了外面那一圈,换了工具定义、改了上下文管理、加了错误恢复循环。

结果,在主流的编程能力基准测试TerminalBench 2.0里,得分从52.8%涨到66.5%,排名从30名开外冲进前5。马没换,就换了套马具,这个数字比任何解释都有说服力。

02

概念火了之后,开发者社区迅速分成两派,吵得挺凶的。

一派觉得 Harness 被吹过头了。好玩的是,这派最猛的代言人,来自 Anthropic 自己家。

Boris Cherny,Claude Code 的创造者,就是那个目前市面上最火的 AI 编程工具,他做的,他在AI 工程圈很有影响力的播客社区的讨论里,说了一段让对面很不舒服的话,大意是:

Claude Code 的所有秘诀都在模型本身,它是模型上最薄的一层包装,我们不可能做得比这更精简了。

你品品,一帮人在喊「Harness就是一切」,结果做出最成功的Agent产品之一的人告诉你,他的产品基本没有Harness,这多少有点打脸。

OpenAI的Noam Brown更直接,他说在推理模型上搭脚手架,很多时候都是添乱;模型的推理能力一直在飞速进步,你今天费半天劲搭的编排逻辑,过几个月新模型出来,就成了绊脚石。

独立测试也在帮这派说话:

专门做AI能力评估的机构METR做了严格对比,结论是Claude Code和Codex,并没有显著赢过一个基础脚手架。

Scale AI的SWE-Atlas测试结论更扎心,你换哪个Harness框架,差距基本在误差范围内,说白了,折腾半天跟没折腾一样。

听到这,你可能会想,得,Harness就是个营销概念吧?

别急,还有更离谱的实验。安全研究员Can Boluk做了个叫Hashline的实验,他没碰模型、没改提示词,就改了一件事,Agent编辑代码的格式。

怎么改的?他给每行代码加了2到3个字符的哈希标识,Agent改代码时不用复述整行,只需要说「把2:f1那行换成这个」就行。

就这一个小改动,一个模型的编程得分从6.7%涨到了68.3%,模型权重一个字节没动过。你说Harness有没有用?

另一家做AI应用框架的公司LlamaIndex,创始人直接喊口号:模型的驾驭系统就是一切。他说自己一个下午优化Harness,15个大模型的编码能力全涨了。

这派还有一张最硬的商业牌,Cursor。

这家公司没有自己的基础模型,底层用Anthropic和OpenAI的能力,相当于用别人的马,但它靠模型上面那一层Harness,2025年底估值到了293亿美元,2026年3月在谈500亿,年化收入突破20亿美元,超过半数财富500强都在用来。

它的护城河在哪?在马具。

所以到底谁对?我觉得他们在说不同层面的东西,你把两边的论据摊开看,会发现一个很有意思的事情。

Boris Cherny 说 Claude Code 是「最薄的包装」,这确实没撒谎。Claude Code 的产品架构就是简单,没有什么花哨的多步编排逻辑。

但你去看Boris Cherny自己怎么用Claude Code,就不一样了:他日常同时开10到15个Claude Code会话,5个在终端里跑,5到10个在浏览器里,还有几个在手机上。

他用自动化钩子,每次保存代码后自动格式化;用规划模式,强制Agent先出方案再动手,方案没批准就不能写一行代码;甚至用子Agent做代码审查,让Agent检查Agent的活;还把Agent接上浏览器自动化工具,让它自己打开浏览器跑测试,看看写的东西能不能用。

他自己都说:给模型一种验证自身工作的方式,质量能提升两到三倍。你说这不是Harness?

说白了,Boris Cherny说的「薄」,是产品架构层面的薄;而对面说的「厚」,是工程实践层面的厚。

产品可以很薄,实际用时,必须在模型周围建立规则、验证、反馈循环,它才能在真实项目里不翻车,这两件事一点都不矛盾。

就像赛车手说「我的车底盘结构很简单」,但每次上赛道前,都要花三个小时调悬挂、调胎压、调刹车平衡。

其实争论「模型重要还是Harness重要」,本身就有点无聊,就像争论发动机重要还是底盘重要一样,开过车的人都不会问这种问题。

03

但是,等一下,如果 Harness 真有那么重要,有一件事就说不通了:为什么做得最好的那些团队,反而一直在拆掉自己搭的 Harness?

Manus 你应该听过。

他们半年重写了五次Harness,每次都是砍功能,用通用的Shell执行,替换掉复杂的工具定义;用结构化的交接文件,替换掉管理型Agent,越做越简单。

Next.js背后的公司,在他们的v0产品里删掉了80%的Agent工具,效果反而更好;Anthropic自己也在干这事,Boris Cherny说Claude Code的代码每三到四周就重写一次。

为什么要重写?

因为新版本模型出来后,上一版Harness里的很多逻辑,已经被模型内化了,那些代码就成了多余的,不切掉反而碍事。

这就和前面说的「Harness就是一切」矛盾了。如果它是壁垒,为什么大家都在拆?因为Harness本身,根本不是壁垒。

Anthropic的研究员Nicholas Carlini,用Claude的上一代旗舰模型Opus 4.5时,做出了一个能用的编译器;后来换成Opus 4.6,同样的任务,产出能编译Linux内核了。

关键是,每升一级模型,他都得重新设计Harness。

因为模型变强了,旧Harness里那些「保护性」的逻辑,就变成了约束,限制了新模型本来能自主完成的事。他反复强调:设计Harness时,得站在Claude的角度想。

这揭示了一个不太舒服的真相:

今天精心设计的Harness,大概率会被下一代模型「吃掉」;今天你需要规则防止Agent搞乱架构,明天新模型可能天生就知道不该这么做;今天你得用专门的评审Agent检查质量,后天模型自己的自我评估可能就靠谱了。

反过来也成立。

LangChain在调Harness的过程中,积累了大量执行轨迹数据:哪些路径成功、哪些模式失败、工具调用的序列是什么、Agent卡在哪一步、为什么卡住?

这些数据很有价值,能反馈回模型训练,让下一代模型更适配这个工作环境;LangChain自己也说:模型和Harness,正在共同进化。

所以真正的情况是:

模型在吃Harness,Harness也在喂模型,它们像一条咬住自己尾巴的蛇,谁也停不下来。

真正壁垒在于蛇转动的速度,谁能更快发现Agent的失败模式,把它编码进环境,再用环境跑出来的数据喂给下一代模型,让这个飞轮再转一圈,谁就赢了。

Cursor 值那么多钱,因为几百万开发者每天在上面写代码,每一次使用都在给这个飞轮加燃料,它积累的不是 Harness,是飞轮的转速。

说到底,所有人都在争「马重要还是马具重要」,但真正跑在前面的人,早就不关心这个了;他们关心,换马具的速度有多快,以及换下来的旧马具里攒下的经验,能不能让马跑得更快。

这条蛇还在转,而且越转越快。嗯,整个事情就是这样;就在我写完这篇文章的时候,Anthropic 昨天把 Harness 做成产品发布了出来。