主题
《Anthropic说:不要再等下一代模型了,立刻马上做Harness!》内容总结
来源:探索AGI 公众号 | 作者:猕猴桃 | 日期:2026年3月25日
核心论点:同一个模型,什么都没换——数据没换,提示词没换,只换了模型外面包的那层运行环境(Harness),编程基准的成功率就能从 42% 跳到 78%。优化模型外面的壳,回报率可能比等下一代模型更高。
一、三代工程范式的进化
| 时期 | 范式 | 核心关注 |
|---|---|---|
| 2022-2024 | Prompt Engineering(提示词工程) | 怎么写好一条指令(few-shot、chain-of-thought、角色扮演) |
| 2025 | Context Engineering(上下文工程) | 为模型动态构建整个上下文(文件、历史对话、工具定义、知识库检索) |
| 2026.2 | Harness Engineering(驾驭工程) | 搭建整个工作环境,让 Agent 能持续、稳定、高质量地工作 |
比喻:Prompt Engineering 是写好一封邮件;Context Engineering 是把相关附件都带上;Harness Engineering 是搭建整个工作环境——约束、反馈循环、架构规则、工具链、生命周期管理。
概念起源
Mitchell Hashimoto(HashiCorp 联合创始人、Terraform 缔造者)2026年2月发表博客,将使用 AI 编程的进化拆为六个阶段,第五阶段即 Engineer the Harness:
"每当你发现 Agent 犯了一个错误,你就花时间去工程化一个解决方案,让它再也不会犯同样的错。"
他在 Ghostty 项目中实践了这一理念——AGENTS.md 文件中的每一行规则,背后都对应一个 Agent 曾经犯过的错。
二、百万行代码的验证(OpenAI Codex 实验)
- 规模:5个月,约100万行代码,1500个 PR,全部由 Agent 生成,人类一行代码都没写
- 团队:3名工程师(后扩到7人),平均每人每天合并 3.5 个 PR
- 效率:相比传统手写,工期大约是 1/10
OpenAI 团队总结的硬规则
- 仓库是 Agent 唯一的知识来源
- 代码不仅要对人类可读,更要对 Agent 可读
- 架构约束不靠 prompt,靠 linter
- 自主性得一步步给
- 如果 PR 需要大改才能合并,问题不在 Agent,在 Harness
项目核心工程师 Ryan Lopopolo:"Agent 不难,Harness 才难。"
OpenAI 团队的角色总结:"我们最大的挑战在于设计环境、反馈循环和控制系统。不写代码了,写规则。"
三、不止 OpenAI:多家公司的验证
Stripe「Minions」系统
- 每周合并 1300+ PR,全部无人值守 Agent 完成
- Blueprint 编排系统:将工作流拆为确定性节点(跑 linter、推送更改)和 Agentic 节点(实现功能、修复 CI)
- 硬规则:CI 最多跑两轮,第一轮失败 Agent 自动修复再跑一次,还失败直接转交人类
- 内部挂了约 500 个 MCP 工具,但给每个 Agent 只精心筛选子集(更多工具 ≠ 更好表现)
- 结论:"成功取决于可靠的开发者环境、测试基础设施和反馈循环,跟模型选择关系不大。"
Cursor「Self-Driving Codebases」
- 每小时约 1000 个 commit,一周超过 1000万次工具调用
- 经历了多次架构迭代:
- 单 Agent → 复杂任务扛不住
- 多 Agent 共享状态文件 → 锁竞争,Agent 互相打架
- 结构化角色分工 → 太僵硬
- 持续执行器 → 角色过载
- 最终版:递归 Planner-Worker 模型
- 发现:约束解空间,反而让 Agent 更有生产力。模糊指令在数百个并发 Agent 间会被放大。
- 反直觉结论:当 Harness 定义了清晰边界,Agent 反而更快收敛到正确答案。
四、模型不会反省——Anthropic 的核心发现
Anthropic 工程师发现了一个底层问题:模型不会评价自己的工作。
- 让 Agent 自己评估刚写完的东西时,它会自信地表示"写得很好",即使质量明显不行
- 在主观任务(如前端设计)上尤其严重
- 这是 Harness 需要存在的底层原因之一:模型能力够了,但它对自己的能力没有准确认知
Anthropic 的解法:Generator-Evaluator 架构
借鉴 GAN(生成对抗网络) 思路,将生成和评估拆为两个独立 Agent:
| 角色 | 职责 |
|---|---|
| Planner | 把一句话需求展开成完整的产品规格 |
| Generator | 按 sprint 逐个功能实现 |
| Evaluator | 每个 sprint 结束后用 Playwright 真机验收(点页面、查 API、看数据库状态) |
关键发现:
- 开箱即用的 Claude 是一个很差的 QA Agent——发现问题后会说服自己"这不是大问题"然后批准
- 需要多轮校准 evaluator 的判断标准
- 让一个独立的 evaluator 变得严格,远比让 generator 学会自我批评容易得多
对比实验结果
| 模式 | 耗时 | 花费 | 结果 |
|---|---|---|---|
| Solo 模式 | 20分钟 | $9 | 画面看起来不错,但核心功能全坏 |
| Harness 模式 | 6小时 | $200 | 功能可用,游戏能玩 |
| 优化后 Harness | ~4小时 | ~$125 | 更完整的构建 |
五、数据调研:Harness 带来的价值
| 来源 | 数据 |
|---|---|
| LangChain | 同一模型(gpt-5.2-codex),只改 Harness,Terminal Bench 2.0 成绩从 52.8% → 66.5%,排名从30名开外进前5 |
| Nate B Jones | 同一模型,Harness 不同,成功率 42% vs 78%——换壳提升相当于换一代模型 |
| Anthropic | Solo 模式 20分钟/$9(功能坏) vs Harness 模式 6小时/$200(功能可用) |
| Terminal Bench 2.0 | Claude Opus 4.6 在 Claude Code Harness 排名第33,换 Harness 冲到第5——差28位 |
| Pi Research | 一个下午内,仅修改 Harness,提升了 15个不同 LLM 的编程能力 |
六、反对声音:Bitter Lesson 阵营
OpenAI Noam Brown 的观点
"Harness 就像一根拐杖,我们终将超越它。"
- 推理模型出现前,开发者搭了大量复杂 Agentic 系统模拟推理能力,推理模型一出来这些东西一夜之间不需要了
- 预判 OpenAI 将走向统一模型的未来
- 建议:"别花六个月搭建一个可能六个月后就被淘汰的东西。"
METR 的数据
- 审查了 scikit-learn、Sphinx、pytest 三个项目的 296 个 AI 生成 PR
- 维护者的合并率约为自动化评分通过率的一半
- 自动评分器说 Agent 能独立完成约 50 分钟的任务,但维护者实际愿意合并的只对应 8 分钟的任务范围——7 倍的能力高估
七、Anthropic 的最终判断:壳在进化,不会消失
Anthropic 用自身实验回应了反对阵营:
Harness 随模型进步而平移
- Opus 4.5 时代:需要 sprint + context reset 机制(因为 4.5 有"上下文焦虑",快用完窗口时提前收尾,质量下降)
- Opus 4.6 时代:直接砍掉 sprint 结构,generator 连续跑两个多小时没崩溃——Sprint 被淘汰了
- 但 Evaluator 没有被淘汰:模型能力边界往外推了,但边界本身没有消失
Anthropic 的核心判断:Harness 的可能性空间不会随模型进步而缩小。它会平移。
模型变强了,旧的约束可以拆掉,但新的、更高阶的约束空间打开了。
持续演化的证据
| 团队 | 演化情况 |
|---|---|
| Manus | 6个月内重构了 5次 Harness |
| LangChain | 一年内重新架构了 3次 研究型 Agent |
| Vercel | 砍掉了 80% 的 Agent 工具 |
Harness 不是一次性工程,它是一个持续演化的系统。
八、核心结论
Anthropic 博客最后一句话:
"有意思的 harness 组合空间不会随着模型进步而缩小。它只是在移动。而 AI 工程师真正要做的,是持续找到下一个有效的组合。"
- 写代码正在变成一件成本很低的事。设计那套让 Agent 持续、稳定、高质量写代码的系统,才是真正贵的部分。
- 这套系统不是一劳永逸的。每一代模型出来,都得重新审视哪些约束还管用,哪些该拆掉,哪些新的空间被打开了。
- 真正稀缺的能力,不在模型里面,在模型外面。而且它每隔几个月就得重写一次。
关键角色转变
| 公司 | 工程师现在在写什么 |
|---|---|
| OpenAI Codex | 架构规则、linter 配置和 AGENTS.md |
| Stripe | Blueprint 编排和 CI 限速策略 |
| Anthropic | Evaluator 的打分标准和校准逻辑 |
工程师不再写代码,而是写规则、写环境、写反馈系统。