← 返回首页
READING NOTE / 004完整原文 · 分块对照

Harness Engineering: What Every AI Engineer Needs to Know in 2026

Harness 工程:2026 年每位 AI 工程师都需要了解的事

Yanli LiuMedium · AI Advances原文链接 ↗

5,444 个英文词 · 24 个原文块 · 11 张保存图片 · 原文于 7 月 6 日更新

总结

这篇文章把 Harness 看作模型之外的运行与控制系统:为智能体准备项目上下文、工具、进度记录和验证反馈。作者比较了 OpenAI 的环境建设、Anthropic 的生成与评估分工,以及 Thoughtworks 的控制措施分类。三种视角可以叠加:一套系统既可以有清晰的仓库规则,也可以安排独立评估,再用分类框架检查遗漏。

补充核验发现,文中的若干结论需要收紧:相关实践早于所谓“90 天诞生”;Sora 与百万行代码是两个案例;游戏制作器与数字音频工作站的花费不能直接证明模型升级节省了 38%。模型变强后,应在相同任务与验收标准下测试哪些组件可以删除,同时继续保留有实际价值的反馈、权限边界和可追溯记录。

  • Harness 工程
  • 上下文管理
  • 反馈与评估
  • 智能体架构
  • 组件消融

英文原文 01

192 词

Three camps, three architectures — and what Opus 4.7 just proved about all of them

Read this for free

In February 2026, OpenAI published a blog post that quietly redefined what software engineers actually do all day. The title was two words: “Harness Engineering.”

The post described how a small team shipped one million lines of production code without writing a single line by hand.

Instead, they designed the environment their AI agents worked inside: the constraints, the feedback loops, the documentation structure, the dependency rules. The agents wrote the code. The humans designed the system that made the agents reliable.

Within weeks, Anthropic published three separate engineering papers (effective harnesses, harness design, managed agents) on the same concept. ThoughtWorks formalized a framework. Red Hat wrote implementation guides. Philipp Schmid at Hugging Face called it “the most important discipline of 2026.”

A new engineering discipline had materialized in 90 days.

And it’s already evolving faster than anyone expected. Yesterday, Anthropic released Opus 4.7 — their third model generation in under a year. Each generation didn’t just improve the model. It simplified the harness. Components that were load-bearing in March became dead weight by April.

中文译文 01

348 字

三个阵营,三种架构——以及 Opus 4.7 刚刚为它们共同证明的事

免费阅读全文 [1]

2026 年 2 月,OpenAI 发布了一篇博客,悄然重新定义了软件工程师日常工作的内容。标题只有两个词:“Harness Engineering”。 [1]

这篇文章讲述了一个小团队如何交付一百万行生产代码,而没有手写其中任何一行。

他们设计的是 AI 智能体工作的环境:约束条件、反馈循环、文档结构和依赖规则。代码由智能体编写,人类负责设计让智能体可靠工作的系统。

短短几周内,Anthropic 围绕同一概念发表了三篇独立的工程论文,分别讨论有效的 Harness、Harness 设计和托管智能体。ThoughtWorks 将它整理成一套框架,Red Hat 编写了实施指南,Hugging Face 的 Philipp Schmid 则称它为“2026 年最重要的学科”。 [1] [2] [3] [4] [5] [6]

一门新的工程学科,就这样在 90 天内形成了。

而且,它的演进速度已经超出了所有人的预期。昨天,Anthropic 发布了 Opus 4.7——这是他们不到一年内推出的第三代模型。每一次换代,进步的都不只是模型,围绕模型搭建的 Harness 也变得更简单了。3 月还不可或缺的组件,到了 4 月就成了累赘。 [1]

英文原文 02

192 词 · 1 张图

The discipline is 90 days old and already rewriting its own rules.

Photo by Sergey Shmidt on Unsplash

The numbers explain the urgency. LangChain ran the same model on Terminal Bench 2.0 twice: once with their old harness, once with their new one. Same model, different harness. Score jumped from 52.8% to 66.5%.

Vercel went the opposite direction and removed 80% of their agent’s tools. The result? Better performance. Fewer tools, tighter constraints, stronger output.

If 2025 was the year AI agents proved they could write code, 2026 is the year we discovered that the agent was never the hard part. The harness is.

But here’s what makes this moment genuinely interesting: three major camps emerged with fundamentally different ideas about what a harness should do. They agree on the problem. They disagree on the architecture. And the choice between them isn’t academic. It determines how much you spend, how many engineers you need, and whether your agents produce working software or expensive hallucinations.

This article breaks down all three approaches, shows you what each one actually looks like in practice, and gives you a decision framework for choosing the right one.

中文译文 02

331 字

这门学科才诞生 90 天,就已经开始改写自己的规则。

摄影:Sergey Shmidt,图片来自 Unsplash [1] [2]

这些数字说明了为什么这件事如此紧迫。LangChain 用同一个模型跑了两次 Terminal Bench 2.0:一次使用旧版 Harness,一次使用新版。模型没换,只换了 Harness,得分就从 52.8% 跃升到了 66.5%。

Vercel 则反其道而行,移除了智能体 80% 的工具。结果呢?表现更好了。工具更少,约束更集中,输出更出色。

如果说 2025 年是 AI 智能体证明自己会写代码的一年,那么 2026 年就是我们发现真正难点的一年:难的从来不是智能体,而是 Harness。

但眼下真正有意思的是,出现了三个主要阵营,它们对 Harness 应该做什么有着根本不同的看法。它们认同问题所在,却不认同应采用什么架构。这种选择并非纸上谈兵:它决定了你要花多少钱、需要多少工程师,以及智能体最终交付的是能用的软件,还是代价高昂的幻觉。

本文将逐一拆解这三种思路,展示它们在实际工作中的形态,并提供一套帮助你做出选择的决策框架。

英文原文 03

235 词 · 1 张图

What a Harness Actually Is

The simplest definition comes from ThoughtWorks’ Sunit Parekh in “Beyond Vibe Coding”:

Agent = Model + Harness.

The harness is everything that isn’t the model itself. It’s the constraints that keep the agent on track, the feedback loops that catch mistakes, the documentation that tells the agent where it is and what’s already been done, and the tools it has permission to use. Strip away the harness and you have a raw language model guessing its way through your codebase. Add the right harness and you have a system that ships production code.

OpenAI’s team reached for an older metaphor when they named it. A harness is horse tack: the reins, saddle, and bit that channel a powerful but unpredictable animal in a useful direction. You don’t make the horse smarter. You design the equipment that makes its strength useful.

Philipp Schmid offered a more technical analogy that’s worth internalizing. Think of it like a computer: the model is the CPU (raw processing power), the context window is RAM (limited, volatile working memory), the harness is the operating system (manages what the CPU sees and when), and the agent is the application running on top of all of it.

Diagram by Author: The OS Analogy: Model as CPU, Harness as Operating System

If you come from a finance or risk management background, there’s an even more direct way to think about it.

中文译文 03

382 字

Harness 究竟是什么

最简洁的定义来自 ThoughtWorks 的 Sunit Parekh,他在《Beyond Vibe Coding》中写道: [1]

智能体 = 模型 + Harness。

Harness 指的是模型本身之外的一切:让智能体不偏离目标的约束、发现错误的反馈循环、告诉智能体自己身处何处以及已经完成哪些工作的文档,还有它获准使用的工具。去掉 Harness,剩下的就是一个在代码库里摸索猜测的原始语言模型。配上合适的 Harness,你得到的则是一套能够交付生产代码的系统。

OpenAI 团队为它命名时,借用了一个古老的比喻。Harness 原指马具:缰绳、马鞍和衔铁,将一匹力量强大却难以预测的马引向有用的方向。你没有让马变得更聪明,而是设计了能让它的力量发挥作用的装备。

Philipp Schmid 提出了一个更偏技术、也值得记住的类比。把它想成一台计算机:模型是 CPU,提供原始运算能力;上下文窗口是 RAM,充当容量有限、无法永久保存的工作记忆;Harness 是操作系统,管理 CPU 在何时看到哪些内容;智能体则是运行在这一切之上的应用程序。

作者绘图:操作系统类比——模型相当于 CPU,Harness 相当于操作系统

如果你有金融或风险管理背景,还可以用一种更直接的方式理解它。

英文原文 04

241 词 · 1 张图

A harness is a control framework. It’s the set of policies, checkpoints, and audit trails that ensure an autonomous system operates within acceptable bounds. Compliance teams have been building these for decades. The AI world just gave them a new name.

What the artifacts actually look like

Diagram by Author: The Harness Formula: Agent = Model + Harness

Most articles define harnesses abstractly and stop there. That’s not enough. If you’re going to build one, you need to see what the pieces look like in practice. Here are the key artifacts that show up across every major implementation.

AGENT.md / CLAUDE.md files (universal pattern, different names). These are markdown files distributed throughout the codebase that the agent reads at the start of every session. OpenAI’s Codex calls them AGENT.md. Anthropic’s Claude Code calls them CLAUDE.md. Cursor uses .cursorrules. The name varies, the principle doesn’t. They contain project context, coding conventions, architecture decisions, and “how we do things here” guidance. OpenAI’s Sora Android team maintained these across the entire repo. The agent reads them like onboarding docs for a new engineer joining the team mid-sprint. One file per major module, updated as the project evolves.

# AGENT.md - Authentication Module
## Architecture
- OAuth2 flow with PKCE, tokens stored in encrypted SharedPreferences
- Never store tokens in plaintext. Never log token values.
## Conventions  
- All auth errors route through AuthErrorHandler
- Retry logic: 3 attempts with exponential backoff
## Current State
- Migration from v1 to v2 token format in progress (see issue #247)

中文译文 04

376 字

Harness 就是一套控制框架。它由政策、检查点和审计记录组成,确保自主系统在可接受的范围内运行。合规团队几十年来一直在搭建这类框架,AI 领域只是给它们换了个名字。

这些工程产物实际是什么样子

作者绘图:Harness 公式——智能体 = 模型 + Harness

多数文章抽象地定义了 Harness,就到此为止了。但这还不够。如果你打算自己搭建,就需要看到各个组成部分的实际样子。下面这些关键产物,在各主要实现中都能见到。

AGENT.md / CLAUDE.md 文件:通用的做法,不同的名称。这些 Markdown 文件分布在代码库各处,智能体会在每次会话开始时读取。OpenAI 的 Codex 称它们为 AGENT.md,Anthropic 的 Claude Code 称它们为 CLAUDE.md,Cursor 使用 .cursorrules。名字不同,原理一样。文件包含项目背景、编码规范、架构决策,以及“我们这里怎么做事”的指导。OpenAI 的 Sora Android 团队在整个仓库中维护了这些文件。智能体读取它们,就像一个在迭代中途加入团队的新工程师阅读入职文档。每个主要模块一份,并随项目演进更新。

# AGENT.md - Authentication Module
## Architecture
- OAuth2 flow with PKCE, tokens stored in encrypted SharedPreferences
- Never store tokens in plaintext. Never log token values.
## Conventions  
- All auth errors route through AuthErrorHandler
- Retry logic: 3 attempts with exponential backoff
## Current State
- Migration from v1 to v2 token format in progress (see issue #247)

英文原文 05

259 词

JSON feature lists (Anthropic pattern). When an agent builds an entire application across multiple sessions, each new session starts with a blank context window. How does the agent know what’s already done and what to work on next? Anthropic’s answer is a JSON file that serves as both the project spec and the progress tracker. Each entry defines a feature, its verification steps, and a pass/fail status. For their claude.ai clone demo, this list ran to over 200 discrete features, all starting as “failing.”

The agent reads this file at the start of every session, picks the highest-priority failing feature, implements it, verifies it against the test steps, marks it “passing,” and commits. It’s a test suite and a project board in one file, readable by both humans and agents.

{
  "category": "authentication",
  "feature": "Password reset via email",
  "verification": [
    "Click 'Forgot Password' on login page",
    "Enter registered email address",
    "Verify reset email received within 30 seconds",
    "Click reset link, enter new password",
    "Confirm login with new password succeeds"
  ],
  "status": "failing"
}

Why JSON and not markdown? Anthropic found that models are “less likely to inappropriately change or overwrite JSON files compared to Markdown.” A small detail, but it matters when the agent is running autonomously for hours.

Session initialization routines (Anthropic pattern). Every coding session follows the same 7-step boot sequence: confirm the working directory, read git logs and progress files, consult the feature list for the highest-priority incomplete feature, start the dev server, run basic end-to-end verification, implement a single feature, then commit with descriptive messages and progress updates.

中文译文 05

444 字

JSON 功能清单:Anthropic 的做法。当智能体跨多次会话构建完整应用时,每次新会话的上下文窗口都是空白的。它怎么知道已经完成了什么、接下来该做什么?Anthropic 的答案是一个 JSON 文件,同时承担项目规格说明和进度跟踪的作用。每条记录定义一项功能、相应的验证步骤,以及通过或未通过的状态。在他们仿制 claude.ai 的演示项目中,这份清单包含 200 多项独立功能,初始状态全是“failing”(未通过)。

智能体在每次会话开始时读取这份文件,选出优先级最高且尚未通过的功能,完成实现,按测试步骤验证,将其标记为“passing”(已通过),然后提交代码。一份文件同时扮演测试清单和项目看板的角色,人和智能体都能读懂。

{
  "category": "authentication",
  "feature": "Password reset via email",
  "verification": [
    "Click 'Forgot Password' on login page",
    "Enter registered email address",
    "Verify reset email received within 30 seconds",
    "Click reset link, enter new password",
    "Confirm login with new password succeeds"
  ],
  "status": "failing"
}

为什么用 JSON,而不是 Markdown?Anthropic 发现,与 Markdown 相比,模型“不太容易不恰当地修改或覆盖 JSON 文件”。这看似是个小细节,但当智能体连续自主运行数小时,它就很重要了。

会话初始化流程:Anthropic 的做法。每次编码会话都遵循同样的七步启动流程:确认工作目录,读取 Git 日志和进度文件,查阅功能清单以找出优先级最高的未完成功能,启动开发服务器,执行基本的端到端验证,实现一项功能,最后提交代码、写清提交说明并更新进度。

英文原文 06

243 词 · 1 张图

This isn’t optional. Without it, every new session starts from scratch, and the agent wastes its first 20 minutes figuring out what’s already been done.

Structured task templates (Red Hat pattern). Before any coding begins, the harness analyzes the actual codebase using language server and code analysis tools to produce a grounded impact map. Then it generates a task template with real file paths, real symbol names, existing patterns to follow, and concrete acceptance criteria. No guessing, no hallucinated file paths.

Sprint contracts (Anthropic pattern). Before the generator agent starts coding, it negotiates with the evaluator agent. The generator proposes what it will build and how success will be verified. The evaluator reviews the proposal for completeness. Only after both agree does implementation begin. It’s a lightweight version of the design review that good engineering teams already do, except both participants are AI agents.

Diagram by Author: Harness Artifacts Map: The five key artifacts across all implementations

The common thread

Look at these artifacts together and a pattern emerges. Every single one is designed to answer the same question: “What does the agent need to know before it writes a single line of code?”

The answer, it turns out, is a lot. Where it is in the codebase, what’s already been done, what “good” looks like, what’s off limits, and how to verify its own work. That’s not intelligence. That’s context. And context, it turns out, is the real product of harness engineering.

中文译文 06

424 字

这不是可有可无的。缺少这套流程,每次新会话都得从头摸索,智能体会把前 20 分钟浪费在弄清楚哪些工作已经完成上。

结构化任务模板:Red Hat 的做法。开始编码之前,Harness 先通过语言服务器和代码分析工具检查真实的代码库,生成一份有实际依据的影响范围图。然后,它生成任务模板,列出真实的文件路径、真实的符号名称、应遵循的现有模式,以及明确的验收标准。不靠猜测,也不凭空编造文件路径。

迭代契约:Anthropic 的做法。生成智能体开始编码前,会先与评估智能体协商。生成者提出要构建什么、如何验证成功,评估者检查提案是否完整。双方达成一致后,才开始实现。这相当于优秀工程团队本就会做的设计评审的轻量版本,只不过参与双方都是 AI 智能体。

作者绘图:Harness 工程产物图谱——各类实现中的五项关键产物

共同的线索

把这些产物放在一起看,就能发现一个共同模式。它们都在回答同一个问题:“智能体写下第一行代码之前,需要知道什么?”

答案是:需要知道很多。它位于代码库的哪里,哪些工作已经完成,什么样才算“好”,哪些事情不能做,以及如何验证自己的工作。这些不是智能,而是上下文。事实表明,上下文才是 Harness 工程真正要交付的东西。

英文原文 07

286 词 · 2 张图

The Three Camps

The term “harness engineering” didn’t emerge from a committee or a conference keynote. Three groups hit the same wall independently, and each one built a different ladder to get over it.

OpenAI: “We had a million lines nobody wrote”

Diagram by Author: Three Camps of Harness Engineering: OpenAI, Anthropic, ThoughtWorks

OpenAI’s Codex team had a problem that was almost absurd in scale. They were building a production application, and the agents were writing all of it. Not some of it. All of it. One million lines. Zero written by human hands.

At that scale, the traditional approach of reviewing every line of code stops working. You can’t code-review a million lines. What you can do is design the environment so thoroughly that the agents produce reviewable output in the first place.

Their core lesson, learned the hard way:

Give Codex a map, not a 1,000-page instruction manual.

They built strict dependency flows (Types, then Config, then Repo, then Service, then Runtime, then UI) and enforced them with structural tests. They embedded AGENT.md files throughout the codebase as distributed documentation. They wired agents directly into CI/CD pipelines so every change was tested automatically.

The philosophy: design the environment, then let the agent loose inside it. The human role is architect, not coder.

The proof it worked came from the Sora Android build. Four engineers, 28 days, roughly 5 billion tokens consumed, and the app hit #1 on the Play Store with a 99.9% crash-free rate. Codex handled 70% of internal pull requests weekly. The engineers spent their time on high-level architecture, planning, and verification. The agent did the rest.

Diagram by Author: OpenAI/Codex Dependency Flow: Types → Config → Repo → Service → Runtime → UI

中文译文 07

474 字

三个阵营

“Harness Engineering”这个术语并非出自某个委员会或某场大会的主题演讲。三个团队各自撞上了同一堵墙,又各自搭出了不同的梯子翻过去。

OpenAI:“我们有一百万行代码,却没有一行是人写的”

作者绘图:Harness 工程的三个阵营——OpenAI、Anthropic、ThoughtWorks

OpenAI 的 Codex 团队面对的问题,规模大得近乎荒诞。他们正在构建一款生产应用,而代码全部由智能体编写。不是一部分,是全部。一百万行,没有一行出自人手。

到了这个规模,传统的逐行代码审查方式就行不通了。你没法逐行审查一百万行代码。但你可以把工作环境设计得足够完善,让智能体从一开始就产出易于审查的结果。

他们在实践中付出代价才学到的核心经验是:

给 Codex 一张地图,而不是一本一千页的操作手册。

他们建立了严格的依赖流向:Types,然后是 Config、Repo、Service、Runtime,最后是 UI,并用结构测试强制执行。他们把 AGENT.md 文件嵌入代码库各处,作为分布式文档,还将智能体直接接入 CI/CD 流水线,让每次变更都能自动接受测试。

其理念是:先设计环境,再让智能体在其中自主行动。人类扮演的是架构师,而不是编码者。

Sora Android 的开发证明了这套方法的效果。四位工程师、28 天、约 50 亿个 token,应用登上了 Play Store 榜首,无崩溃率达到 99.9%。每周内部拉取请求中,70% 由 Codex 处理。工程师把时间用于总体架构、规划和验证,剩下的交给智能体。 [1]

作者绘图:OpenAI/Codex 的依赖流向——Types → Config → Repo → Service → Runtime → UI

英文原文 08

265 词 · 1 张图

Anthropic: “Our agents kept praising their own broken work”

Anthropic’s problem was subtler and, in some ways, harder. They were building long-running agents that needed to produce complete applications over multiple hours of autonomous work. The model was capable enough. The problem was quality control.

When they asked the agent to evaluate its own output, it would

confidently praise the work, even when, to a human observer, the quality was obviously mediocre.

Self-evaluation didn’t work. The agent was both the student and the teacher, and it was giving itself straight A’s.

Their solution drew inspiration from Generative Adversarial Networks (GANs): separate the thing doing the work from the thing judging the work. This led to a three-agent architecture. A Planner expands short prompts into comprehensive product specs. A Generator implements features one sprint at a time. An Evaluator uses browser automation to interact with the running application like an actual user, grading each sprint against explicit criteria.

The key insight was that tuning a standalone evaluator to be skeptical turned out to be far more tractable than making a generator critical of its own work.

They didn’t stop there. The architecture evolved from two agents (initializer plus coder) to three agents (planner, generator, evaluator) to a fully decoupled system they call “managed agents,” where the brain, the execution environment, and the session log are all independent, replaceable components. That decoupling cut their P50 time-to-first-token by 60% and P95 by over 90%.

Diagram by Author: Anthropic Multi-Agent Architecture: Planner → Generator → Evaluator

The philosophy: separate the doer from the judge, and make the judge hard to impress.

中文译文 08

468 字

Anthropic:“智能体总在夸赞自己那些有问题的成果”

Anthropic 面对的问题更隐蔽,在某些方面也更棘手。他们正在构建能长时间运行的智能体,希望它们连续自主工作数小时,产出完整的应用。模型能力已经足够,问题出在质量控制上。

当他们让智能体评价自己的产出时,它会

自信地大加赞赏,哪怕在人类观察者看来,质量显然平平。

自我评估没有奏效。智能体既当学生又当老师,给自己打的全是 A。

他们从生成对抗网络(GAN)中获得灵感:把做事的角色和判断成果的角色分开。由此形成了一种三智能体架构。规划者将简短提示扩展成完整的产品规格说明;生成者每轮迭代实现一项功能;评估者通过浏览器自动化,像真实用户一样操作运行中的应用,并按明确的标准为每轮迭代打分。

关键发现是:把独立评估者调校得更挑剔,远比让生成者对自己的工作保持批判态度容易。

他们并没有止步于此。架构从两个智能体——初始化者加编码者——演进为三个智能体——规划者、生成者、评估者——再发展为他们称作“托管智能体”的完全解耦系统。在这个系统里,大脑、执行环境和会话日志都是独立且可替换的组件。这样的解耦使首 token 延迟的 P50 降低了 60%,P95 降低了超过 90%。

作者绘图:Anthropic 的多智能体架构——规划者 → 生成者 → 评估者

其理念是:把执行者和评判者分开,并让评判者不轻易满意。

英文原文 09

167 词

ThoughtWorks: “We kept seeing the same failures across 50 client teams”

ThoughtWorks arrived at harness engineering from a different starting point entirely. They weren’t building a product. They were watching dozens of engineering teams across industries try to adopt AI agents, and they were seeing the same patterns of failure everywhere.

Birgitta Böckeler, a Distinguished Engineer with 20+ years of experience, published the most comprehensive framework of the three in April 2026. Where OpenAI built a system and Anthropic built an architecture, ThoughtWorks built a taxonomy.

Their framework classifies harness controls along two axes. The first axis: feedforward (guides that anticipate agent behavior before execution) versus feedback (sensors that observe results and enable self-correction). Neither works alone. Feedback-only means repeated mistakes. Feedforward-only means you never validate whether your guides actually work.

The second axis: computational (deterministic checks like linters, type checkers, and test suites that run in milliseconds) versus inferential (semantic analysis by another LLM, which is slower and more expensive but catches things code analysis can’t).

中文译文 09

340 字

ThoughtWorks:“我们在 50 个客户团队中反复看到同样的失败”

ThoughtWorks 接触 Harness 工程的起点完全不同。他们没有在打造一款产品,而是在观察各行业的数十支工程团队尝试采用 AI 智能体,并发现相同的失败模式不断重现。

拥有二十多年经验的杰出工程师 Birgitta Böckeler,在 2026 年 4 月发表了三者中最全面的框架。OpenAI 建立了一套系统,Anthropic 设计了一种架构,而 ThoughtWorks 提出了一套分类体系。 [1]

他们的框架沿两个维度对 Harness 的控制手段进行分类。第一个维度是前馈与反馈:前馈是在执行之前引导智能体行为的措施,反馈则是观察结果、帮助智能体自我纠正的检测手段。单靠任何一方都不够。只有反馈,就会反复犯错;只有前馈,就永远无法验证这些指导是否有效。

第二个维度是计算式与推断式:前者是代码检查器、类型检查器和测试套件等确定性的检查,可以在毫秒内运行;后者是由另一个大语言模型完成的语义分析,速度更慢、成本更高,但能发现代码分析无法发现的问题。

英文原文 10

167 词

They then organized everything into three regulation categories: maintainability (the most mature, where linters and coverage tools already work well), architecture fitness (enforcing design patterns and performance requirements), and behavior (the hardest, where you’re trying to verify that the agent actually did what was asked, not just that the code compiles).

The philosophy: classify, systematize, and give teams a shared vocabulary for what they’re building.

Why they diverged

The three camps built different things because they started with different problems. OpenAI needed to ship product at scale. Anthropic needed quality from autonomous agents. ThoughtWorks needed a framework that could help any team, regardless of which agent or model they used.

That’s worth remembering as you evaluate which approach fits your situation. The question isn’t “which camp is right?” The question is “which problem do I actually have?”

Three Architectures, Side by Side

Section 3 told you where each camp came from. Now let’s look at what they actually built, and more importantly, where each architecture breaks down.

中文译文 10

327 字

随后,他们又按调控目标把这些手段分为三类:可维护性,这是最成熟的领域,代码检查器和覆盖率工具已有良好表现;架构适配性,用来落实设计模式和性能要求;行为,这是最难的一类,因为你要验证的是智能体确实完成了要求的任务,而不只是代码能够编译。

其理念是:通过分类和系统化整理,让团队在构建这些系统时有一套共同语言。

为什么会走向不同方向

三个阵营构建了不同的东西,是因为它们出发时面对的问题不同。OpenAI 需要大规模交付产品;Anthropic 需要让自主智能体产出高质量结果;ThoughtWorks 则需要一套能帮助所有团队的框架,无论团队采用哪种智能体或模型。

当你评估哪种方法适合自己时,值得记住这一点。该问的不是“哪个阵营是对的”,而是“我实际面对的是什么问题”。

并排比较三种架构

第 3 节讲了各个阵营的起点。现在来看看它们具体构建了什么,更重要的是,每种架构会在哪里遇到局限。

英文原文 11

257 词

OpenAI/Codex: The Environment-First Harness

The Codex harness works best when you can invest heavily upfront in designing the environment your agents work inside. The payoff is massive autonomy downstream, but the setup cost is real.

How it works. The harness is the codebase itself. AGENT.md files provide context. Structural tests enforce architectural rules mechanically. Dependency flows (Types, then Config, then Repo, then Service, then Runtime, then UI) prevent agents from building things in the wrong order. CI/CD pipelines validate every change automatically.

The agent operates with high autonomy: it opens pull requests, responds to review feedback, runs tests, iterates on failures, and merges when criteria are met. Humans don’t review every line. They review the constraints that make every line reviewable.

Where it shines. Massive codebases. If you’re building or maintaining a project with hundreds of thousands of lines, the environment-first approach scales because the constraints are embedded in the repo structure itself. Add a new module, add an AGENT.md, and the agent can work in it without new training or configuration. OpenAI estimated they shipped at roughly 1/10th the time it would have taken to write the code by hand.

Where it breaks. This approach assumes you can define the environment comprehensively before the agent starts working. For greenfield projects where you’re still figuring out the architecture, that’s hard. It also leans heavily on structural tests and CI pipelines, which catch whether code is correct but not whether it’s good. A function can pass all tests and still be a terrible design choice.

中文译文 11

436 字

OpenAI/Codex:环境优先的 Harness

如果你能在前期投入大量精力,设计智能体工作的环境,Codex 的 Harness 就能发挥最佳作用。回报是后续高度自主的执行能力,但前期搭建成本也确实存在。

工作方式。Harness 就是代码库本身。AGENT.md 文件提供上下文,结构测试以机械化方式执行架构规则。依赖流向——Types、Config、Repo、Service、Runtime、UI——防止智能体按错误顺序构建组件。CI/CD 流水线则自动验证每次变更。

智能体拥有很高的自主性:发起拉取请求、回应审查反馈、运行测试、针对失败反复修改,并在满足条件后合并。人类不再逐行审查,而是审查那些让每一行代码都易于审查的约束。

优势所在。超大型代码库。如果你正在构建或维护一个拥有数十万行代码的项目,环境优先的方法能够扩展,因为约束已经嵌入仓库结构本身。新增一个模块,再添加一份 AGENT.md,智能体就能在其中工作,无须新的训练或配置。OpenAI 估计,他们交付所花的时间大约只有手写代码所需时间的十分之一。

局限所在。这种方法假设,在智能体开始工作前,你就能完整定义其环境。对于架构仍在探索中的全新项目,这很难做到。它也高度依赖结构测试和 CI 流水线,能检查代码是否正确,却不能判断代码是否优秀。一个函数可能通过所有测试,在设计上却依然糟糕。

英文原文 12

227 词

Anthropic: The Multi-Agent Harness

Anthropic’s approach costs more per run but catches problems the environment-first approach misses. The trade-off is quality versus speed, and for applications where broken output is more expensive than slow output, it’s worth considering.

How it works. Three specialized agents with distinct roles. The Planner takes a short user prompt (1–4 sentences) and expands it into a comprehensive product specification, focusing on deliverables and high-level design while deliberately avoiding granular implementation details that could cascade errors. The Generator implements features one at a time using a standard stack (React, Vite, FastAPI, SQLite/PostgreSQL), self-evaluating before handoff. The Evaluator uses Playwright browser automation to interact with the running application like an actual end user, testing UI features, API endpoints, and database states against explicit grading criteria.

Before each sprint begins, the Generator and Evaluator negotiate a “sprint contract” defining what will be built and how success will be measured. Think of it as a lightweight design review, except between two agents.

The managed agents layer takes this further. The brain (Claude plus the harness), the hands (sandboxes and execution environments), and the session (a durable, append-only event log) are all decoupled into independent interfaces. If the brain crashes, it recovers from the event log. If a sandbox fails, it surfaces as a tool-call error. Credentials never reach the sandboxes where agent-generated code executes.

中文译文 12

409 字

Anthropic:多智能体 Harness

Anthropic 的方法每次运行更贵,但能发现环境优先方案遗漏的问题。这里需要权衡质量和速度。对于那些出错的代价高于等待成本的应用,这种方法值得考虑。

工作方式。三个专业智能体,各司其职。规划者将一至四句话的简短用户提示扩展成完整的产品规格说明,重点放在交付内容和总体设计上,刻意避开可能使错误层层传递的实现细节。生成者采用标准技术栈——React、Vite、FastAPI、SQLite/PostgreSQL——逐项实现功能,并在交接前进行自我评估。评估者使用 Playwright 浏览器自动化,像真实的最终用户一样操作运行中的应用,按照明确的评分标准检查界面功能、API 端点和数据库状态。

每轮迭代开始前,生成者和评估者会协商一份“迭代契约”,约定本轮要构建什么,以及如何衡量是否成功。你可以把它理解为一次轻量的设计评审,只不过发生在两个智能体之间。

托管智能体层把这种思路推进了一步。大脑——Claude 及其 Harness——、双手——沙箱和执行环境——以及会话——持久保存、只能追加的事件日志——都被解耦为独立接口。大脑崩溃后可以通过事件日志恢复,沙箱失败会表现为一次工具调用错误。凭证永远不会进入执行智能体生成代码的沙箱。

英文原文 13

205 词

Where it shines. Applications requiring high quality and correctness. The evaluator catches things that tests alone miss: UI elements that render but aren’t usable, features that technically work but have unintuitive workflows, API endpoints that return correct data in the wrong format. Anthropic’s tests showed the solo agent ($9, 20 minutes) produced a broken app. The full harness ($200, 6 hours) produced working software with polished interfaces and correct functionality.

Where it breaks. Cost and time. The three-agent system is significantly more expensive than a solo agent, and the evaluator requires substantial prompt tuning. Out of the box, it identifies real issues but then rationalizes accepting them anyway. Getting it to be genuinely critical took Anthropic multiple development cycles. The good news: as models improve, the harness gets simpler. Anthropic’s Opus 4.6 version removed sprint decomposition entirely and dropped to single-pass evaluation, bringing the cost down meaningfully from the Opus 4.5 version. With Opus 4.7 (released April 16, 2026), the trend accelerates: the model now devises ways to verify its own outputs before reporting back, produces cleaner code with fewer wrapper functions and fallback scaffolding, and generates a third of the tool errors it used to. Each generation chips away at the evaluator’s job description.

中文译文 13

368 字

优势所在。需要高质量和正确性的应用。评估者可以发现单靠测试会漏掉的问题:能显示却无法正常操作的界面元素,技术上可用却不符合直觉的流程,以及数据正确但返回格式错误的 API 端点。Anthropic 的测试显示,单智能体花费 9 美元、运行 20 分钟,产出的是一个坏掉的应用;完整 Harness 花费 200 美元、运行 6 小时,产出的软件能够工作,界面精致,功能正确。

局限所在。成本和时间。三智能体系统明显比单智能体昂贵,评估者的提示词也需要大量调校。开箱即用时,它会发现真实问题,却又找理由接受这些问题。为了让它真正挑剔起来,Anthropic 经历了多轮开发迭代。好消息是,模型越强,Harness 就越简单。与 Opus 4.5 版本相比,Anthropic 的 Opus 4.6 版本完全取消了分轮迭代,改为一次集中评估,成本明显下降。Opus 4.7 于 2026 年 4 月 16 日发布后,这一趋势进一步加快:模型现在会在汇报前自行设计验证方法,生成的代码更简洁,包装函数和兜底支撑代码更少,工具调用错误也降到了过去的三分之一。每一代模型都在逐步减少评估者需要承担的工作。

英文原文 14

179 词

ThoughtWorks: The Taxonomy Harness

ThoughtWorks didn’t build a system you can deploy. They built a way of thinking about harnesses that helps you design your own. This is the most useful approach if you’re not adopting Codex or Claude’s specific tooling, but it requires the most work to operationalize.

How it works. Every harness control is classified along two dimensions. First: is it a guide (feedforward, applied before the agent acts) or a sensor (feedback, applied after)? Second: is it computational (deterministic, runs in milliseconds, like a linter) or inferential (uses an LLM, runs in seconds, like a code review agent)?

This gives you a 2x2 matrix of control types:

  • Computational guides (feedforward): type systems, linters, architectural decision records
  • Computational sensors (feedback): test suites, coverage analysis, mutation testing, structural complexity checks
  • Inferential guides (feedforward): specification documents, design prompts, constraint descriptions
  • Inferential sensors (feedback): LLM-based code reviewers, semantic quality assessors, behavior validators

These controls then distribute across the change lifecycle: pre-integration (fast, cheap checks), post-integration pipeline (comprehensive validation), continuous drift detection (background monitoring), and runtime feedback (SLO alerts, quality sampling).

中文译文 14

368 字

ThoughtWorks:分类体系式 Harness

ThoughtWorks 没有构建一套能直接部署的系统,而是提供了一种思考 Harness 的方式,帮助你自行设计。如果你不打算采用 Codex 或 Claude 的特定工具,这种方法最有用,但将它落地也最费工夫。

工作方式。每项 Harness 控制措施都按两个维度分类。首先,它是指导措施——在智能体行动前施加的前馈——还是检测手段——在行动后提供的反馈?其次,它是计算式的——像代码检查器一样,确定性执行、耗时毫秒——还是推断式的——像代码审查智能体一样,使用大语言模型、耗时数秒?

由此得到一个 2×2 的控制类型矩阵:

  • 计算式指导(前馈):类型系统、代码检查器、架构决策记录
  • 计算式检测(反馈):测试套件、覆盖率分析、变异测试、结构复杂度检查
  • 推断式指导(前馈):规格文档、设计提示、约束说明
  • 推断式检测(反馈):基于大语言模型的代码审查者、语义质量评估者、行为验证者

这些控制措施又分布在变更的整个生命周期中:集成前进行快速、低成本检查,集成后的流水线负责全面验证,持续漂移检测在后台监测,运行时反馈则包含 SLO 告警和质量抽样。

英文原文 15

237 词 · 1 张图

Where it shines. Existing teams with established codebases. If you already have linters, test suites, and CI pipelines, the ThoughtWorks framework helps you recognize that you already have half a harness. The taxonomy tells you what’s missing and where to invest next. It also introduced a valuable concept: “harnessability.” Strongly-typed languages, clear module boundaries, and well-structured frameworks make agent work inherently more successful. If you’re choosing a tech stack for a new project, this matters.

They also proposed harness templates: standardized bundles of guides and sensors for common service topologies. If 80% of your services are CRUD APIs, you build one harness template for CRUD APIs and reuse it. That’s a practical insight that reduces the per-service cost of harness engineering significantly.

Where it breaks. It’s descriptive, not prescriptive. The framework tells you what kinds of controls exist but doesn’t tell you which specific tools to use or how to wire them together. You still need to make those decisions yourself. For teams that want a turnkey solution, this isn’t it. It’s a blueprint, not a building.

The behavior regulation category is also admittedly weak. Verifying that an agent’s output is maintainable or architecturally sound is well-served by existing tools. Verifying that it actually did what was asked? ThoughtWorks is honest about the gap: current approaches “place excessive faith in AI-generated tests,” which are “currently inadequate” for behavior verification.

Diagram by Author: ThoughtWorks 2×2 Control Framework

中文译文 15

473 字

优势所在。拥有成熟代码库的现有团队。如果你已经有代码检查器、测试套件和 CI 流水线,ThoughtWorks 的框架会帮助你意识到,自己其实已经搭好了半套 Harness。这套分类告诉你还缺什么,下一步该投在哪里。它还引入了一个有价值的概念:“harnessability”,也就是代码库有多适合受到 Harness 的引导和约束。强类型语言、清晰的模块边界和结构良好的框架,天然更有利于智能体成功完成工作。如果你正为新项目选择技术栈,这一点很重要。

他们还提出了 Harness 模板:针对常见服务结构,将指导措施和检测手段打包成标准组合。如果你的服务中有 80% 是 CRUD API,就可以构建一套 CRUD API 的 Harness 模板并重复使用。这是一条实用的建议,能够明显降低为每项服务单独搭建 Harness 的成本。

局限所在。这是一套描述性的框架,而不是具体的操作规程。它告诉你有哪些类型的控制措施,却不告诉你该选哪些工具、怎样把它们连起来。这些决定仍然要自己做。对于想要开箱即用方案的团队,它并不合适。它是一张蓝图,而不是一栋已经建好的楼。

对行为的调控也确实是薄弱环节。验证智能体产出的可维护性或架构是否合理,已有工具能提供较好的支持。但要验证它是否真的完成了要求的任务呢?ThoughtWorks 坦率承认了这个缺口:现有方法“过度信任 AI 生成的测试”,而这些测试“目前还不足以”验证行为。

作者绘图:ThoughtWorks 的 2×2 控制框架

英文原文 16

265 词 · 1 张图

What the Deep Dive Reveals

Strip away the implementation differences and something surprising emerges. Three teams that never coordinated, working from different starting problems, arrived at the same five principles. That kind of independent convergence usually means something real.

1. Context beats instructions

Diagram by Author: Five Convergence Principles discovered independently by all three camps

OpenAI learned to “give a map, not a manual.” Anthropic built JSON feature lists and progress files so agents always know where they are. Red Hat’s entire workflow is built on analyzing the real codebase before generating any tasks. ThoughtWorks calls it “feedforward.”

The labels differ. The discovery is identical: showing the agent the current state of the world (real file paths, real code patterns, real progress) consistently outperforms telling it what to do in abstract terms. An agent grounded in your actual codebase produces code that fits. An agent working from a vague description hallucinates file paths and invents APIs that don’t exist.

2. Planning and execution must be separated

OpenAI separates environment design (human) from code generation (agent). Anthropic runs a dedicated Planner agent before the Generator touches any code. ThoughtWorks mandates a human review checkpoint between planning and implementation. Red Hat splits into Phase 1 (impact map) and Phase 2 (implementation), with a hard gate between them.

Every camp discovered independently that letting an agent plan and execute in the same pass produces unreliable output. The planning step doesn’t have to be done by a human or even by a separate agent. But it has to be a separate step, with its output reviewed before implementation begins.

中文译文 16

485 字

深入比较后的发现

抛开实现上的差异,会出现一个令人意外的发现。三个从未协调过的团队,从不同的问题出发,得出了同样的五条原则。这种独立的趋同通常意味着,它们触及了某些实质问题。

1. 上下文胜过指令

作者绘图:三个阵营各自独立发现的五条共同原则

OpenAI 学会了“给地图,而不是给手册”。Anthropic 构建 JSON 功能清单和进度文件,让智能体始终知道项目进展到哪里。Red Hat 的整个工作流以生成任务前分析真实代码库为基础。ThoughtWorks 则把这称为“前馈”。

名称不同,发现却完全一样:向智能体展示真实的当前状态——实际文件路径、现有代码模式和真实进度——始终比抽象地告诉它该做什么更有效。以实际代码库为依据的智能体,写出的代码能融入项目;只有模糊描述可参考的智能体,则会凭空编造文件路径和不存在的 API。

2. 规划与执行必须分开

OpenAI 将环境设计交给人类,将代码生成交给智能体。Anthropic 在生成者接触代码前,先运行专门的规划智能体。ThoughtWorks 要求在规划和实现之间设置人工审查检查点。Red Hat 将工作分为第一阶段的影响范围图和第二阶段的实现,两者之间设有必须通过的关口。

每个阵营都各自发现,让智能体在同一轮中一边规划一边执行,会产生不可靠的结果。规划不一定要由人完成,甚至不一定需要另一个智能体,但它必须是独立步骤,而且产出的计划必须在实现开始前经过审查。

英文原文 17

209 词

3. Feedback loops are non-negotiable

OpenAI wires agents into CI/CD pipelines and observability systems. Anthropic built a dedicated Evaluator agent that uses a browser to test the running application. ThoughtWorks formalized this as “sensors” and warned that feedforward-only approaches (guides without validation) never confirm whether the guides actually work.

The disagreement isn’t about whether you need feedback. It’s about who provides it. OpenAI uses automated tests and CI. Anthropic uses another LLM. ThoughtWorks says use both, layered: computational feedback first (fast, cheap, deterministic), inferential feedback second (slow, expensive, semantic). All three agree that a harness without a feedback mechanism is just a prompt with extra steps.

4. One thing at a time

OpenAI breaks goals into smaller building blocks and works depth-first. Anthropic enforces one-feature-per-sprint, with a commit after each. ThoughtWorks describes a phased lifecycle: pre-integration, post-integration, continuous monitoring.

Agents that try to do too much at once run out of context, lose coherence, or silently drop requirements. Forced incrementalism, where the agent completes one unit of work before starting the next, is universal across every successful harness implementation. The session initialization routine Anthropic uses (read progress, pick one feature, implement, commit, repeat) is the clearest expression of this, but every camp enforces it in their own way.

中文译文 17

409 字

3. 反馈循环必不可少

OpenAI 将智能体接入 CI/CD 流水线和可观测性系统。Anthropic 构建了专门的评估智能体,用浏览器测试运行中的应用。ThoughtWorks 将这些正式归为“检测手段”,并指出,只有前馈、只有指导却没有验证的方法,永远无法确认指导是否有效。

分歧不在于需不需要反馈,而在于谁来提供反馈。OpenAI 使用自动化测试和 CI;Anthropic 使用另一个大语言模型;ThoughtWorks 主张两者分层配合:先做快速、低成本、确定性的计算式反馈,再做速度较慢、成本较高、理解语义的推断式反馈。三方都认同,没有反馈机制的 Harness,不过是在提示词之外多绕了几道弯。

4. 一次做好一件事

OpenAI 将目标拆成更小的组成部分,按深度优先的方式推进。Anthropic 要求每轮迭代只处理一项功能,完成后就提交。ThoughtWorks 描述的是分阶段的生命周期:集成前、集成后,以及持续监测。

智能体试图一次做太多事情,就会耗尽上下文、失去连贯性,或者悄悄遗漏需求。要求智能体先完成一个工作单元,再开始下一个的强制渐进式做法,存在于所有成功的 Harness 实现中。Anthropic 的会话初始化流程最清楚地体现了这一点:读进度、选一项功能、实现、提交,再重复。其他阵营也都以各自的方式贯彻这一原则。

英文原文 18

196 词

5. The codebase is the documentation

OpenAI embeds AGENT.md files in the repo. Anthropic stores feature lists, progress files, and git history as the agent’s continuity mechanism. ThoughtWorks measures “harnessability,” the degree to which the codebase itself is legible to agents. Red Hat says move all conventions into version control.

Nobody maintains a separate knowledge base for the agent. The repo is the single source of truth. If a convention, constraint, or architectural decision isn’t in the codebase, the agent won’t know about it. This has a practical implication: teams that invest in code organization, clear module boundaries, and embedded documentation get better agent performance for free.

What this convergence means

These five principles aren’t opinions. They’re engineering constraints that three independent teams discovered by building and failing and iterating. If you’re designing a harness from scratch, start here. Whatever tools you choose, whatever architecture you prefer, violating these principles will cost you. Every team that tried found out the hard way.

The Cost of Getting It Right

Harness engineering isn’t free. Every approach involves trade-offs between upfront investment, per-run cost, and ongoing maintenance. Here’s what the actual data shows, and where the data runs out.

中文译文 18

347 字

5. 代码库就是文档

OpenAI 将 AGENT.md 文件放进仓库。Anthropic 通过功能清单、进度文件和 Git 历史,让智能体的工作得以衔接。ThoughtWorks 衡量“harnessability”,也就是代码库本身对智能体有多清晰易懂。Red Hat 则主张把所有约定都纳入版本控制。

没有人为智能体另建一套知识库。仓库就是唯一可信的信息来源。如果某项约定、约束或架构决策不在代码库中,智能体就不会知道。这意味着,团队只要投入精力整理代码、划清模块边界、将文档放进仓库,就能顺带获得更好的智能体表现。

这种趋同意味着什么

这五条原则不是意见,而是三个独立团队在构建、失败和迭代中发现的工程约束。如果你从零设计 Harness,就从这里开始。无论选择什么工具、偏好哪种架构,违背这些原则都会付出代价。每个尝试过的团队都吃过这个亏。

把事情做对,要付出什么成本

Harness 工程并不免费。每种方法都需要在前期投入、单次运行成本和持续维护之间权衡。下面来看真实数据说明了什么,以及哪些地方还没有数据可用。

英文原文 19

272 词

What we know: Anthropic’s A/B test

Anthropic published the clearest cost comparison available. They ran the same application prompt through a solo agent and through their full multi-agent harness.

The solo agent (no harness): $9, 20 minutes. The output had a working UI but broken core functionality. Entities didn’t respond to user input. It looked like an app but didn’t behave like one.

The full harness (Opus 4.5): $200, 6 hours. The output had genuinely playable games with polished interfaces, consistent visual identity, and correct physics.

That’s a 22x cost increase for a functioning product versus a demo that only looks right in screenshots. Whether that’s expensive or cheap depends entirely on what a broken release costs your team.

The model improvement dividend

Here’s where it gets interesting. When Anthropic moved from Opus 4.5 to Opus 4.6, they were able to simplify the harness significantly. Sprint decomposition was removed. Single-pass evaluation replaced per-sprint grading. Context resets were dropped in favor of automatic compaction.

The result: a complete Digital Audio Workstation application for $124.70 in 3 hours 50 minutes. That’s a 38% cost reduction and 36% time reduction from the Opus 4.5 harness, driven entirely by model improvement. The harness did less work because the model needed less scaffolding.

This pattern isn’t slowing down. Opus 4.7, released April 16, extended the trend line. CursorBench scores jumped from 58% to 70%. Rakuten-SWE-Bench saw 3x more production tasks resolved. The model achieved a 14% improvement over Opus 4.6 at fewer tokens — meaning less harness overhead per unit of useful output. Three model generations, three rounds of harness simplification. That’s a trend, not an anecdote.

中文译文 19

475 字

我们知道的:Anthropic 的 A/B 测试

Anthropic 公布了目前最清楚的成本比较。他们将同一个应用提示分别交给单智能体和完整的多智能体 Harness。

单智能体,没有 Harness:9 美元,20 分钟。产出有可用的界面,但核心功能是坏的。游戏实体不响应用户输入。它看起来像个应用,操作起来却不是。

完整 Harness,使用 Opus 4.5:200 美元,6 小时。产出包含真正能玩的游戏,界面精致、视觉风格统一,物理效果正确。

成本增加了 22 倍,换来的是一款能用的产品,而不只是截图看起来不错的演示。究竟贵不贵,完全取决于发布有问题的版本会给你的团队造成多大损失。

模型进步带来的收益

有意思的地方来了。当 Anthropic 从 Opus 4.5 升级到 Opus 4.6 后,Harness 可以大幅简化:取消分轮迭代,以一次集中评估替代每轮评分,并用自动压缩代替上下文重置。

结果是:花费 124.70 美元、用时 3 小时 50 分钟,完成了一款数字音频工作站应用。相比 Opus 4.5 的 Harness,成本降低了 38%,时间减少了 36%,而这些完全由模型进步带来。模型不再需要那么多辅助支撑,Harness 也就少做了许多工作。

这一变化并没有放缓。4 月 16 日发布的 Opus 4.7 延续了这一趋势。CursorBench 得分从 58% 提升到 70%,在 Rakuten-SWE-Bench 上解决的生产任务数量达到此前的三倍。与 Opus 4.6 相比,模型表现提升了 14%,消耗的 token 却更少——这意味着每产出一份有用结果,Harness 所需的额外开销更低。三代模型,三轮 Harness 简化。这是趋势,不是孤立的个案。

英文原文 20

193 词 · 1 张图

But it doesn’t eliminate the need for a harness. The Opus 4.6 evaluator still caught significant gaps: missing interactive timeline controls, absent instrument UI panels, incomplete audio recording. Without it, those features would have shipped stubbed or broken. The harness shrinks with each generation. It hasn’t disappeared yet.

The hidden cost: maintenance

The number nobody talks about is maintenance. A harness isn’t a one-time build. It’s an ongoing engineering commitment.

Manus refactored their harness five times in six months. LangChain restructured their research agent three times in one year. These aren’t signs of bad engineering. They’re the natural consequence of building on top of rapidly improving models. Every time the model gets better, some piece of your harness becomes unnecessary overhead, and finding which piece requires active testing.

Philipp Schmid’s advice: “Build to delete.” Design every harness component to be removable. Test each component periodically by turning it off and measuring whether output quality changes. If it doesn’t, delete it. Carrying dead harness components costs tokens on every run and adds maintenance burden with zero benefit.

Diagram by Author: The Cost of Getting It Right: $9 solo vs $200 harness vs $124.70 optimized

中文译文 20

362 字

但这并不意味着 Harness 已经不再需要。Opus 4.6 的评估者依然发现了明显缺口:时间轴缺少交互控制,没有乐器操作面板,音频录制功能也不完整。没有评估者,这些功能就会以只有空壳或无法正常工作的状态交付。Harness 随每代模型缩小,但还没有消失。

隐性成本:维护

没人谈起的那笔账,是维护成本。Harness 不是搭建一次就结束的东西,而是一项需要持续投入的工程工作。

Manus 在六个月内重构了五次 Harness。LangChain 在一年内三次重构研究智能体。这并不说明工程做得差,而是在快速进步的模型之上构建系统的自然结果。每当模型变强,Harness 中的某一部分就可能成为不必要的开销;要找出是哪一部分,就需要主动测试。

Philipp Schmid 的建议是:“为日后删除而构建。”让每个 Harness 组件都可以拆除。定期关闭组件,测量输出质量是否变化;如果没有变化,就删掉它。保留已经无用的 Harness 组件,会在每次运行时消耗 token,并增加维护负担,却没有任何收益。

作者绘图:把事情做对的成本——9 美元的单智能体、200 美元的 Harness,以及优化后 124.70 美元的方案

英文原文 21

225 词

A decision framework

Rather than prescribing a cost profile for each camp, here’s how to match your situation to an approach:

You’re a solo developer or small team, early stage. Start with AGENT.md/CLAUDE.md files in your repo and a solid CI pipeline. This is the OpenAI pattern at its simplest. Low cost, immediate benefit. You probably already have most of the pieces.

You’re building a product where quality failures are visible to users. Add evaluation loops. You don’t need Anthropic’s full three-agent architecture. Even a simple post-build review step using a second model to check the first model’s work catches errors that tests miss. The principle (separate the doer from the judge) scales down.

You’re running multiple teams adopting agents across an organization. Invest in the ThoughtWorks taxonomy. Map your existing controls (linters, tests, CI) into the feedforward/feedback and computational/inferential grid. Identify the gaps. Build harness templates for your common service types. This is organizational infrastructure, not a per-project decision.

You’re in a regulated industry. Treat the harness as your control framework, because that’s what auditors will eventually ask about. The append-only event log from Anthropic’s managed agents architecture isn’t just good engineering. It’s an audit trail. The structured task templates from Red Hat’s approach produce documentation that maps to compliance requirements. Start thinking about this now, not after the regulator asks.

中文译文 21

431 字

一套决策框架

与其为每个阵营预设一种成本水平,不如按自己的处境选择适合的方法:

如果你是独立开发者,或处于早期阶段的小团队。先在仓库中加入 AGENT.md/CLAUDE.md,再搭建可靠的 CI 流水线。这就是 OpenAI 做法的最简形式:成本低,能立即受益。你很可能已经有了大部分组件。

如果你构建的产品一旦出现质量问题,用户就能直接感受到。加入评估循环。你不必照搬 Anthropic 完整的三智能体架构。哪怕只在构建后增加一个简单的审查步骤,让第二个模型检查第一个模型的工作,也能发现测试漏掉的错误。把执行者和评判者分开的原则,同样适用于小规模方案。

如果你负责推动组织中的多个团队采用智能体。值得投入精力采用 ThoughtWorks 的分类体系。将已有的代码检查器、测试和 CI 映射到前馈/反馈、计算式/推断式的矩阵中,找出缺口,为常见服务类型建立 Harness 模板。这是组织层面的基础设施,而不只是单个项目的决定。

如果你身处受监管行业。把 Harness 当作控制框架,因为审计人员迟早会问到它。Anthropic 托管智能体架构中只能追加的事件日志,不仅是好的工程设计,也是一条审计记录。Red Hat 方法中的结构化任务模板,能够生成与合规要求对应的文档。现在就开始考虑,别等监管方开口再想。

英文原文 22

206 词

The Paradox: Build to Delete

There’s an uncomfortable truth hiding in Anthropic’s data that none of the three camps talk about loudly enough.

When they upgraded from Opus 4.5 to Opus 4.6, they didn’t just get better results. They got simpler results. Sprint decomposition, which had been essential for Opus 4.5 to maintain coherence over long coding sessions, became unnecessary. The model’s improved planning and long-context handling made it redundant. A harness component that was load-bearing in March was dead weight by April.

Then Opus 4.7 landed on April 16 and pushed the pattern further. The model now self-verifies its outputs before reporting back — the exact capability gap that justified a separate Evaluator agent in the first place. It produces cleaner code with fewer wrapper functions and unnecessary scaffolding. It generates a third of the tool errors that previous versions did. The trajectory is clear: 4.5 needed full sprint decomposition and per-sprint evaluation. 4.6 dropped sprint decomposition and moved to single-pass evaluation. 4.7 is starting to internalize the evaluation itself.

Anthropic calls this “harness decay.” Every component in a harness encodes an assumption about what the model can’t do. As models improve, those assumptions expire, and the component that was compensating for a limitation becomes overhead.

中文译文 22

377 字

悖论:为日后删除而构建

Anthropic 的数据里藏着一个令人不安的事实,而三个阵营都没有足够鲜明地把它说出来。

从 Opus 4.5 升级到 Opus 4.6 后,他们得到的不只是更好的结果,还有更简单的实现方式。为了让 Opus 4.5 在长时间编码中保持连贯性,分轮迭代原本至关重要,后来却不再需要了。模型改进后的规划和长上下文处理能力,让它变得多余。3 月还不可或缺的 Harness 组件,到了 4 月就成了累赘。

随后,Opus 4.7 于 4 月 16 日发布,将这一变化进一步推进。模型现在会在汇报前自行验证产出——这恰好就是此前需要独立评估智能体来弥补的能力缺口。它生成的代码更简洁,包装函数和不必要的支撑代码更少,工具调用错误也降到了旧版的三分之一。演进方向十分清楚:4.5 需要完整的分轮迭代和逐轮评估,4.6 取消分轮迭代,改为一次集中评估,4.7 则开始将评估本身内化为模型能力。

Anthropic 把这称为“Harness 衰减”。Harness 的每个组件,都体现了对模型无法独自完成什么事情的某种假设。模型进步后,这些假设不再成立,原本用来弥补局限的组件就变成了额外负担。

英文原文 23

256 词 · 1 张图

The evidence for this is everywhere. Manus refactored their harness five times in six months. LangChain restructured three times in one year. Vercel removed 80% of their agent’s tools and got better performance, not worse. Each case is the same story: what helped last month hurts this month.

Diagram by Author: Build to Delete: Harness decay over model generations

Philipp Schmid connected this to Rich Sutton’s “bitter lesson” from machine learning research: simple methods that scale with compute consistently outperform complex hand-engineered solutions. Applied to harnesses, the implication is clear. Don’t build intricate, tightly-coupled control systems. Build modular ones you can delete piece by piece as the model outgrows them.

This creates a genuine paradox for engineering teams. You need a harness to get reliable output from AI agents today. But the harness you build today will need to be partially dismantled tomorrow. And the teams that cling to their harness architecture after the model has outgrown it will pay a tax on every single run: extra tokens, extra latency, extra maintenance, zero extra quality.

The practical advice is straightforward, even if it feels counterintuitive: design every harness component with a kill switch. Test each one periodically by disabling it and measuring output quality. When quality holds without it, delete it.

The deeper question is one nobody has answered yet. As models continue to improve, do harnesses converge toward a thin, standardized layer, something like an operating system kernel that barely changes? Or do they remain perpetually in flux, rebuilt from scratch with each model generation?

中文译文 23

449 字

这样的证据随处可见。Manus 在六个月内重构了五次,LangChain 在一年内重构了三次,Vercel 移除了智能体 80% 的工具后,表现不降反升。每个案例讲的都是同一个故事:上个月还有帮助的东西,这个月可能就在拖后腿。

作者绘图:为日后删除而构建——Harness 随模型换代而衰减

Philipp Schmid 将这与机器学习研究者 Rich Sutton 的“苦涩的教训”联系起来:能够借助更多算力扩展的简单方法,会持续胜过复杂的人工设计方案。放到 Harness 上,启示很明确:不要构建盘根错节、紧密耦合的控制系统,而应构建模块化系统,让你在模型能力超出组件原有作用时,能够逐个删除它们。 [1]

这给工程团队带来了一个真实的悖论。今天,你需要 Harness 才能让 AI 智能体可靠输出;但今天搭建的 Harness,明天又需要拆掉一部分。当模型已经不再需要某种架构,团队却仍不肯放手,就会在每次运行时付出额外代价:更多 token、更长延迟、更多维护,却没有质量提升。

实用建议很直接,尽管可能有些反直觉:为每个 Harness 组件设计一个停用开关。定期关闭它,测量输出质量;如果关闭后质量不变,就删掉它。

更深一层的问题,目前还没有人回答。随着模型持续进步,Harness 会不会逐渐收敛成一层轻薄、标准化的组件,像几乎不再变化的操作系统内核?还是会始终处于变化之中,每一代模型都要重新搭建?

英文原文 24

270 词

The three camps don’t agree on the answer. OpenAI’s environment-first approach suggests convergence: the codebase structure, CI pipelines, and AGENT.md files are stable infrastructure that persists across model upgrades. Anthropic’s data suggests flux: the multi-agent architecture that was optimal for Opus 4.5 was already too heavy for Opus 4.6, and Opus 4.7’s self-verification capabilities are making even the simplified evaluator look like it’s on borrowed time. ThoughtWorks’ taxonomy is deliberately agnostic, designed to survive regardless of which direction the field moves.

What’s clear is this: the engineers who will build the most reliable AI systems in 2026 and beyond aren’t the ones writing the best code. They’re the ones designing the best constraints. And then being willing to throw those constraints away the moment they stop earning their keep.

Before you go! 🦸🏻‍♀️

If you liked my story and you want to support me:

  1. Throw some Medium love 💕(claps, comments and highlights), your support means the world to me.👏
  2. Follow me on Medium and subscribe to get my latest article🫶

中文译文 24

470 字

三个阵营对此没有一致答案。OpenAI 的环境优先方法暗示了收敛的可能:代码库结构、CI 流水线和 AGENT.md 文件,是可以跨模型升级长期保留的稳定基础设施。Anthropic 的数据则暗示了持续变化:对 Opus 4.5 最合适的多智能体架构,到了 Opus 4.6 已经过于沉重,而 Opus 4.7 的自我验证能力,让简化后的评估者看起来也时日无多。ThoughtWorks 的分类体系则刻意不预设方向,无论领域走向何处,它都能继续适用。

可以确定的是,2026 年及以后,构建最可靠 AI 系统的工程师,不会是代码写得最好的人,而会是最擅长设计约束的人;而且一旦这些约束不再值得保留,他们也愿意把它们扔掉。

离开之前!🦸🏻‍♀️

如果你喜欢这篇文章,也愿意支持我:

  1. 在 Medium 上送来一点爱💕(鼓掌、评论和划线),你的支持对我意义重大。👏
  2. 在 Medium 上关注并订阅我,获取最新文章🫶 [1]

来源与阅读说明

原文来自你提供的 Medium 保存文件夹,采用其中的完整 HTML 和本地图片。保留作者标题、副标题、正文、列表、代码、图注、表情及文末推荐卡片;推荐卡片原本截断的摘要仍保持截断。未将网页按钮、登录提示和平台脚本当作文章内容。

页面可见日期和结构化数据一致指向首次发表时间:2026 年 4 月 17 日 12:44:51 UTC;结构化数据中的最后更新时间为 2026 年 7 月 6 日 07:32:30 UTC。另一发布日期元标签使用了更新时间,本页按首次发表日期署时。原文的“昨天”等相对时间属于首次发表语境。

按中文译文约 400 字分块,常规范围为 300–500 字;优先保持章节、段落及代码完整,中英文同步分块。原文始终展开,174 个文字单元都有中文对照;两段代码保持原样,另附完整中文说明。原文与图中的错误不直接改写,在判断和图内说明中解释。

11 张原始图片全部内嵌,可放大查看。相同上下游资料和解释只在首次相关处出现,也可在右侧查看全部;解释默认折叠,关联标注随正文滚动更新。正文和图片可离线阅读,外部资料需要联网。

补充核验日期:2026 年 9 月 11 日。使用已核对的原始工程报告、官方文档和论文;未复现作者的应用实验或成本测试。视频重构次数、部分文末推荐文章全文,以及读取超时的随笔,均注明核验范围。原文中的操作建议和代码示例仅作为阅读内容处理。