Skip to content

Harness Engineering:当工程师不再写代码 ​

出处

来源:原网页

一句话结论 ​

AI 时代工程师的核心产出,正在从“亲手写代码”转向“设计一套让 Agent 稳定写对代码的执行系统”。

一张图看懂 ​

Harness Engineering:当工程师不再写代码

核心观点 ​

1. 写规则不是额外成本,而是工作本体 ​

作者最初觉得不断补 CLAUDE.md 很浪费时间:

  • Agent 犯错一次,就要补一条规则
  • 上下文、约束、禁区越写越多
  • 文档逐渐膨胀成几百行

后来他意识到,这不是“为写代码做准备”,而是新的工程工作本身: 把隐性经验、架构纪律、质量标准,转成机器可执行的环境约束。

2. 真正的瓶颈不是模型会不会写,而是环境是否可执行 ​

文中引用 OpenAI 的实验:

  • 3 个工程师
  • 5 个月
  • 用 Codex Agent 从空仓库做出超过 100 万行代码的产品
  • 合并约 1500 个 PR
  • 代码基本全部由 Agent 生成

关键问题不在“Agent 能不能生成代码”,而在:

  • 是否知道依赖边界
  • 是否理解架构约束
  • 是否能自行验证结果
  • 是否能在失败后自动回路修正

也就是说,缺的不是代码生成能力,而是能让生成结果持续收敛的反馈系统。

3. Prompt Engineering 已经不够了,重点转向 Harness Engineering ​

作者把演进分成三阶段:

  • Prompt Engineering:把一句话说清楚
  • Context Engineering:把必要信息喂进去
  • Harness Engineering:把整个执行环境搭成可持续运转的系统

最核心的变化是: 以前优化的是“这次回答”; 现在优化的是“这套系统能不能长期稳定地产出正确结果”。

4. Harness = 模型之外的一切执行基础设施 ​

文中借用了一个常见定义: Agent = Model + Harness

Harness 包括:

  • system prompt
  • 仓库内规则文档(如 AGENTS.md / CLAUDE.md)
  • 工具定义
  • 执行沙箱
  • hooks / middleware
  • 任务编排
  • 持久化记忆
  • 自验证与反馈回路

模型像引擎,Harness 像整辆车。 引擎再强,没有刹车、导航、仪表盘和路况反馈,也无法稳定上生产。

5. 工程师角色转移:从直接执行到闭合反馈回路 ​

文章把 Harness Engineering 放进“控制论”脉络里看,给了一个很有力的类比:

  • 蒸汽机时代:工人手动调阀门,后来变成设计调速器
  • Kubernetes 时代:工程师不再手动 SSH 修服务,而是声明目标状态,由控制器持续校正
  • Agent 时代:工程师不再逐行写代码,而是设计让 Agent 自动生成、自动验证、自动修正的系统

核心转变是: 人负责设定目标、边界和反馈;Agent 负责具体执行。

6. 好的 Harness 依赖“机械化约束”,而不是口头约定 ​

文中反复强调一个点: 不要把规范留在 Slack、口头沟通或 code review 习惯里。 应该尽量变成机械可执行的约束:

  • 依赖方向写成 linter 规则
  • 架构边界写进 CI
  • 质量标准变成 golden principles
  • 测试、类型检查、浏览器验证嵌入 Agent 执行循环

一句话: 人能理解的规范不够,Agent 必须能执行。

7. “Repo as System of Record” 会越来越重要 ​

高频出现的设计模式包括:

  • 文档按需加载,而不是一次性全部塞进上下文
  • 每个 Agent 在独立 worktree 中试错
  • 任务定义、架构边界、质量标准全部进仓库
  • 用 CI / Linter / Tests 作为即时反馈回路

这背后的共同原则是: 仓库不是代码存放地,而是 Agent 工作时的唯一真理来源。

8. 模型能力会继续提升,但 Harness 不会消失 ​

文章也提到行业分歧:

  • 一派认为应建设更重的 Harness
  • 一派认为应该尽量信任更强的模型,包装层保持轻量

作者的判断比较稳健: 模型变强,会替代一部分今天“不得不加”的脚手架; 但验证、约束、反馈这些需求不会消失。

也就是说,Harness 的具体形态会变,但“让系统稳定收敛”的工作不会消失。

核心脉络 ​

这篇文章真正想说明的链路 ​

  1. Agent 已经具备了大规模生成代码的能力
  2. 但它天然不知道团队规则、架构边界和质量标准
  3. 所以必须把这些隐性知识外显化、结构化、机械化
  4. 一旦测试、Linter、可观测性、任务拆解和规则文档构成闭环
  5. 工程师的主工作就从“手写代码”转成“设计系统,使代码被正确写出来”

对实际工作的启发 ​

对个人/小团队 ​

  • 不要只追求“哪个 Agent 更强”,先把仓库里的规则写清楚
  • 把常见错误沉淀成 Agent 可读文档,而不是每次口头纠正
  • 把可自动验证的规范尽量变成脚本、测试、CI 和 lint 规则
  • 给 Agent 提供低成本试错环境,例如独立 worktree、隔离沙箱

对存量项目 ​

如果是多年老项目,先别幻想“一步 AI-native”。更现实的顺序是:

  1. 先补最关键的架构边界文档
  2. 再补最关键的自动化检查
  3. 再让 Agent 接手低风险、高验证性的任务

否则 Agent 只是以更快速度复制原有混乱。

对工程师自身定位 ​

未来更值钱的能力,不只是“写得快”,而是:

  • 能定义任务边界
  • 能抽象规范
  • 能搭反馈闭环
  • 能把团队经验转成可执行系统

这会比“某个具体模型的提示词技巧”更耐久。

我认为最值得记住的三句话 ​

  • Humans steer. Agents execute.
  • Agent = Model + Harness
  • 写 CLAUDE.md,不是辅助工作,而是工程工作本身。

原文标记 ​

这不是单篇正式长文,而是一条 X 长帖/线程式文章整理。正文综合了作者对 OpenAI《Harness Engineering》、控制论类比,以及多篇二手分析文章的吸收与再表达。

Copyright © 2026 openalon. All rights reserved.