人人都用智能体,但别忘了 Harness 才是重点

0 阅读5分钟

最近有一个新的概念在 AI 智能体圈逐渐火了起来,叫做 Harness 工程。

初看不解其意,但仔细了解了这个概念之后,发现确实如此,或许智能体时代,真正关键的并不是模型有多智能,Harness 才是重点。

什么是 Harness Engineering

Harness Engineering 指的是:为智能体开发构建一套结构化、可验证、可持续迭代的工作框架

其目标不是替代人类决策,而是通过工程化手段,让智能体在明确边界内高效、可靠地执行任务。

什么叫为智能体提供一套 xxx 的工作框架?

举个例子。

你应该用智能体做过一些项目,无论是简单的还是复杂的。

而且在用智能体的过程中你大概率会有一个感受:有时智能体确实很厉害,但有时却又很“降智”。

在你发现智能体变笨的时候,你的解决办法可能是为它提供更多有用的素材、更鲜明的案例、更有用且贴合自己需求的技术方法。

这样,智能体在得到你提供的新的素材或方法后,解决问题就会变得又聪明起来了。

为什么呢?

如果把智能体当做一个公司实习生,他刚来公司工作,你只给他提了一个需求:“帮我把A产品做好”,而不给他产品对应的调研报告、需求手册,甚至连如何叫“把产品做好” 的“好”的都不说。

实习生能做好才怪。

智能体也是这样,在进行某项任务之前,围绕着这个任务,给智能体提供全面、结构化的工作框架,它的工作会越干越好。

这个工作框架,可以是需求文档、背景说明材料,也可以是写代码时容易出现问题的调试方法,也可以是你自己的经验总结,等等。

将这些材料分目录整理,让智能体在需要的时候,知道该去哪里查资料、该如何不断迭代产品,这才能发挥智能体的最大价值。

所以,上面说的 Harness Engineering 的工作框架,指的就是这个。

为智能体提供一个舒服的工作环境,让它知道该如何一步步做,出现问题的时候去哪里查找解决方案、如何自己解决。

对智能体来说,有了这些输入之后,它才能工作的顺心、发挥自己的最大潜力。

看一个例子

OpenAI 工程技术团队在 2025 年开展了一项实验:3 名工程师,5 个月时间,通过智能体协作完成超过 100 万行代码的开发,且全程无人工手写代码。

支撑这一成果的核心,就是这套名为 Harness Engineering 的方法体系。

他们为了完成这个任务,为智能体的工作环境设计了一个工作框架,这里以其中用来做“情境管理”部分的框架为例。

一个经验是:要给智能体的是一张地图,而不是一本 1000 页的说明书。

最初他们尝试了用一个超大的 AGENTS.md 文件来管理智能体在执行任务的时候所需要的一切知识、技能、技巧等。

但可想而知,这是一次失败的尝试。

一个巨大的指导文件会挤掉任务、代码和相关文档——因此智能体要么会错过关键约束条件,要么开始针对错误的约束条件进行优化。过多的指导反而变得*无效:*当一切都 "重要"时,一切都不重要了。 另外,一本庞杂的手册会过时,这个时候智能体无法判断哪些信息是有效的。一旦人类停止维护它,那么这个文件就会不知不觉中成为一个你找都找不到的麻烦和问题的源头。

于是,在踩过这个坑之后,团队不再将 AGENTS.md 当做百科全书了,而是将其视为百科全书的目录。

为此,团队设计了如下的结构化目录。

代码仓库所需的所有知识都放在一个结构化了的 docs/ 目录中。

AGENTS.md 也不再是大百科全书,而是大概只有 100 行左右内容的目录索引,该索引指向其他目录文件。

AGENTS.md
ARCHITECTURE.md
docs/
├── design-docs/
│   ├── index.md
│   ├── core-beliefs.md
│   └── ...
├── exec-plans/
│   ├── active/
│   ├── completed/
│   └── tech-debt-tracker.md
├── generated/
│   └── db-schema.md
├── product-specs/
│   ├── index.md
│   ├── new-user-onboarding.md
│   └── ...
├── references/
│   ├── design-system-reference-llms.txt
│   ├── nixpacks-llms.txt
│   ├── uv-llms.txt
│   └── ...
├── DESIGN.md
├── FRONTEND.md
├── PLANS.md
├── PRODUCT_SENSE.md
├── QUALITY_SCORE.md
├── RELIABILITY.md
└── SECURITY.md

也就是说:主文档 AGENTS.md 仅保留核心索引,用于明确任务目标、可用工具以及代码输出规范。更详细的技术文档按模块拆分存放于 docs 目录下,智能体按需进行检索。

这一设计确保智能体始终基于准确、精简、结构化的信息进行工作。

除此之外,他们还做了其他工作。

比如代码库设计

传统代码优化侧重人类可读性,Harness 工程要求同时考虑智能体的解析与推理能力。

具体实践包括:

  • 统一日志格式、指标命名、状态标识,便于智能体自动读取与分析
  • 将业务规则、接口约束、架构原则转化为机器可解析的配置文件或注释
  • 提供标准化测试入口,支持智能体自主触发验证、收集反馈、定位问题

本质是将"隐性知识"显性化、结构化,降低智能体的理解成本。

采用 Harness Engineering 后,团队在以下维度获得提升:

从这个例子也可以看出,虽然智能体的能力确实提升了,也大大降低了编码的门槛,但并未消除工程复杂性带来的麻烦。

所以,在一些复杂工程的情形下,我觉得 Harness Engineering 要远比选用哪一个智能体更重要。

因为 Harness Engineering 提供的是一套可落地的方法论:通过结构化知识索引等机制,让人类与智能体可以更高效的写作。

而不至于让智能体一直在钻牛角尖。

在智能体逐渐普及的背景下,掌握"如何驾驭智能体"的能力,可能比"如何使用智能体"更为关键。