Agent Harness:2026 年 AI 工程化最核心的基础设施
"Agent = Model + Harness" —— 2026 年 AI 工程圈的定义性公式
2026 年春天,AI 工程圈被一个看似生僻的词汇点燃了。
"Agent Harness"。
OpenAI 用它构建了一个百万行代码的产品,零行人工手写。Anthropic 的 Claude Code 用它实现了 100% 自举开发。LangChain 发布了 Deep Agents,将 Harness 作为一等公民。Martin Fowler 专门写了一篇长文,定义这个新兴工程领域。
这不是又一个框架的炒作。这是一场正在发生的工程范式转移——当模型能力达到阈值后,决定 Agent 成败的不再是模型本身,而是包裹在模型外面的那层"Harness"。
一、什么是 Agent Harness?
1.1 一句话定义
Agent Harness 是包裹在 LLM 外面的软件基础设施层,负责处理除模型本身以外的所有事务。
Simon Willison 的经典定义:
"Agent = LLM running tools in a loop"
而 Harness 就是让这个 loop 跑起来的完整工程系统。
1.2 核心公式
Agent = Model + Harness
| 组件 | 职责 | 类比 |
|---|---|---|
| Model | 推理、生成文本 | 大脑 |
| Harness | 工具、记忆、环境、验证、编排 | 身体、感官、神经系统 |
LangChain 的 Vivek Trivedy 在 2026 年 3 月首次系统阐述了这个公式,随后被 OpenAI、Martin Fowler 和学术界快速采纳。
1.3 为什么现在火了?
2025-2026 年,AI 行业发现了一个反直觉的事实:
| 发现 | 影响 |
|---|---|
| 同样的模型,换不同的 harness,性能差距可达 6 倍 | 模型不是唯一瓶颈 |
| OpenAI、Anthropic、Vercel 纷纷发表"我们移除了 80% 的 Agent 工具" | 工具多 ≠ 效果好 |
| Claude Code、Codex 等产品依赖 harness 结构 | Harness 成为核心竞争力 |
核心洞察:当模型能力达到阈值后,工程封装(Harness) 比模型本身的提升更能决定 Agent 的可靠性。
二、Harness 解决了什么问题?
2.1 模型的原生局限
纯 LLM 只能做一件事:接收文本输入,输出文本。
它不能:
- ❌ 记住跨会话的信息
- ❌ 执行代码或调用 API
- ❌ 访问外部文件系统
- ❌ 自我验证和纠错
- ❌ 分解复杂任务并跟踪进度
2.2 Harness 的四大弥补
| 局限 | Harness 解决方案 |
|---|---|
| 无记忆 | 持久化存储、上下文压缩、长期记忆系统 |
| 无行动能力 | 工具调用(MCP/A2A)、代码执行沙箱、浏览器控制 |
| 无规划能力 | 任务分解、进度跟踪、子 Agent 编排 |
| 无验证能力 | 自动化测试、静态分析、自我修正循环 |
2.3 一个具体例子
假设你要让 Agent 开发一个 Web 应用:
没有 Harness 的模型:
用户:帮我写一个 claude.ai 的克隆
模型:(生成几千行代码)
用户:代码在哪里运行?
模型:我无法执行代码,我只能生成文本...
有 Harness 的 Agent:
用户:帮我写一个 claude.ai 的克隆
Harness:
1. 初始化项目目录和 git 仓库
2. 创建 feature_list.json(200+ 功能点)
3. 生成基础架构代码
4. 启动开发服务器验证
5. 记录进度到 claude-progress.txt
6. 每轮会话增量开发一个功能
7. 自动化测试验证
8. 提交 PR
三、ETCLOVG:Harness 的七层架构
2026 年 4 月,一篇综述论文 Agent Harness Engineering: A Survey 提出了目前最系统的 Harness 工程框架。
┌─────────────────────────────────────────────────────────────┐
│ ETCLOVG 七层架构 │
├─────────────────────────────────────────────────────────────┤
│ G │ Governance(治理与安全) │
│ │ 权限模型、审计、声明式约束、生命周期钩子 │
├────┼─────────────────────────────────────────────────────────┤
│ V │ Verification(验证与评估) │
│ │ 基准测试、故障归因、回归反馈、部署时评估循环 │
├────┼─────────────────────────────────────────────────────────┤
│ O │ Observability(可观测性) │
│ │ 轨迹追踪、成本监控、可靠性信号、运维工具 │
├────┼─────────────────────────────────────────────────────────┤
│ L │ Lifecycle(生命周期与编排) │
│ │ 单 Agent 控制循环、多 Agent 编排、任务触发流水线 │
├────┼─────────────────────────────────────────────────────────┤
│ C │ Context(上下文与记忆管理) │
│ │ 短期对话、长期记忆、上下文压缩、防漂移 │
├────┼─────────────────────────────────────────────────────────┤
│ T │ Tool Interface(工具接口与协议) │
│ │ MCP、A2A 协议、工具描述、工具选择、会话管理 │
├────┼─────────────────────────────────────────────────────────┤
│ E │ Execution(执行环境与沙箱) │
│ │ 容器、microVM、浏览器沙箱、OS 权限、代码运行时 │
└────┴─────────────────────────────────────────────────────────┘
3.1 各层详解
E - Execution(执行环境)
- 决定 Agent 代码在哪里运行
- 沙箱隔离、权限控制、资源限制
- 从 Docker 容器到 microVM 到浏览器环境
T - Tool Interface(工具接口)
- MCP(Model Context Protocol):标准化工具描述和调用
- A2A(Agent-to-Agent Protocol):Agent 间通信
- 工具发现、选择、执行、结果反馈
C - Context(上下文管理)
- 短期:当前会话的对话历史
- 中期:跨会话的记忆摘要
- 长期:知识库、向量检索、持久化状态
L - Lifecycle(生命周期编排)
- 单 Agent:ReAct 循环、Plan-and-Execute
- 多 Agent:父 Agent 委派子 Agent
- 任务分解、进度跟踪、失败重试
O - Observability(可观测性)
- 轨迹记录(Trace):每一步的输入输出
- 成本追踪:Token 消耗、API 调用费用
- 性能监控:延迟、成功率、错误率
V - Verification(验证与评估)
- 基准测试:SWE-bench、Terminal-bench 等
- 回归测试:确保修改不破坏已有功能
- 人工评估:对复杂任务的人类判断
G - Governance(治理与安全)
- 权限控制:Agent 能访问什么资源
- 审计日志:所有操作可追溯
- 安全策略:防止提示注入、越权操作
四、行业巨头的 Harness 实践
4.1 Anthropic:Claude Code 的 Harness 设计
Anthropic 在 2025 年 11 月发布的 Effective Harnesses for Long-Running Agents 中,分享了 Claude Code 的核心 Harness 设计。
核心问题:长周期 Agent 在跨会话时会"失忆"
解决方案:Initializer + Coding Agent 双模式
第一轮会话:Initializer Agent
├── 创建项目目录结构
├── 初始化 git 仓库
├── 编写 feature_list.json(200+ 功能点,全部标记为 failing)
├── 创建 claude-progress.txt(进度日志)
├── 编写启动脚本(init.sh)
└── 提交初始 commit
后续每轮会话:Coding Agent
├── 读取 claude-progress.txt 了解进度
├── 从 feature_list 选择最高优先级的 failing 功能
├── 实现该功能
├── 运行自动化测试验证
├── 将功能标记为 passing
├── 更新 claude-progress.txt
└── 提交 commit
关键洞察:
- Initializer 解决"一次性做太多"的问题
- Coding Agent 解决"过早宣布胜利"的问题
- claude-progress.txt 是跨会话记忆的桥梁
4.2 OpenAI:Harness Engineering 的极端实践
OpenAI 在 2026 年 2 月发布的 Harness engineering: leveraging Codex in an agent-first world 中,描述了一个极端实验:
一个 3 人团队,5 个月,从零构建一个百万行代码的产品,零行人工手写代码。
约束条件:
- 不允许手动写任何代码
- 所有代码必须由 Codex Agent 生成
- 人类只负责:写需求、审查结果、调整 Harness
结果:
- 开发速度提升 10 倍
- 代码覆盖率达到生产标准
- CI/CD、文档、监控全部由 Agent 生成
核心方法论:
Human: 写需求描述(声明式)
↓
Harness: 分解任务、生成代码、运行测试
↓
Human: 审查结果、调整需求
↓
Harness: 迭代优化
4.3 LangChain:Deep Agents 的 Batteries-Included Harness
LangChain 在 2026 年 3 月发布 Deep Agents,定位是 "batteries-included agent harness"。
设计哲学:
- 开箱即用:规划、上下文管理、委派全部内置
- 模型无关:支持任何模型提供商
- 原生集成:与 LangSmith 追踪和部署无缝衔接
核心架构:
# Deep Agent 的 Harness 结构
parent_agent
├── planning_model # 规划任务分解
├── sub_agent_registry # 子 Agent 注册表
├── memory_files # 持久化记忆文件
├── skills # 可复用技能模块
└── human_in_the_loop # 人工介入点
4.4 Martin Fowler:Harness Engineering 的理论框架
Martin Fowler 在 2026 年 4 月的文章中,从软件工程角度定义了 Harness Engineering。
核心模型:Feedforward + Feedback
┌─────────────┐
│ Guides │ ← Feedforward(前馈控制)
│ (人类制定) │ 预期 Agent 行为,提前引导
└──────┬──────┘
↓
┌─────────────┐
│ Coding Agent │
│ (LLM) │
└──────┬──────┘
↓
┌─────────────┐
│ Sensors │ ← Feedback(反馈控制)
│ (自动执行) │ 观察 Agent 输出,帮助自修正
└─────────────┘
三种 Harness 类型:
| 类型 | 目标 | 示例 |
|---|---|---|
| Maintainability Harness | 代码可维护性 | 代码重复率、循环复杂度、测试覆盖率 |
| Architecture Fitness Harness | 架构符合度 | 模块边界检查、性能测试、架构规范 |
| Behaviour Harness | 功能正确性 | 功能测试套件、端到端验证、人工测试 |
两种执行类型:
| 类型 | 特点 | 运行方式 |
|---|---|---|
| Computational | 确定性、快速、可靠 | CPU 运行(测试、Linter、类型检查) |
| Inferential | 语义分析、非确定性 | GPU/NPU 运行(AI 代码审查、语义验证) |
五、Harness 工程的关键数据
5.1 性能差距实验
论文 How Much Heavy Lifting Can an Agent Harness Do? 的核心发现:
在一个 noisy Collaborative Battleship 游戏中,固定使用同一个 LLM:
| Harness 层级 | 胜率提升 | LLM 调用次数 |
|---|---|---|
| 仅信念追踪(Belief-only) | 基准 | 0 |
| + 声明式规划(Declarative Planning) | +24.1% | 0 |
| + 符号反思(Symbolic Reflection) | ±0.140 F1 | 少量 |
| + LLM 修订门(LLM Revision Gate) | 仅 4.3% 回合触发 | 极少 |
结论:声明式规划层本身就能带来最大收益,根本不需要调用 LLM。
5.2 行业对比
| 产品/系统 | Harness 特点 | 关键指标 |
|---|---|---|
| Claude Code | 自举开发,Initializer + Coding Agent | 100% 代码由自身生成 |
| Codex (OpenAI) | Agent-first,零人工代码约束 | 10x 开发速度提升 |
| Deep Agents | Batteries-included,模型无关 | 开箱即用 |
| Manus | 通用计算机使用,浏览器 + 文件系统 | 端到端任务完成 |
| OpenHands | 开源软件工程 Agent | SWE-bench 领先 |
六、Harness 与 Orchestrator 的区别
这是一个经常被混淆的概念:
| 概念 | 职责 | 类比 |
|---|---|---|
| LLM | 推理、生成文本 | 大脑 |
| Harness | 工具、记忆、环境、验证 | 身体和感官 |
| Orchestrator | 控制流、决策逻辑、重试策略 | 神经系统 |
| Framework | 开发工具包、抽象接口 | 工具箱 |
关系:
- Orchestrator 决定 "做什么"
- Harness 提供 "怎么做" 的能力
例子:
Orchestrator: "这个任务需要调用搜索工具,然后分析结果"
Harness: 提供搜索工具的实现、管理 API 密钥、处理超时、格式化结果
七、Harness 工程的 5 大开放挑战
7.1 执行环境加固与扩展
- 如何平衡安全性(沙箱隔离)与功能性(文件系统访问)?
- 容器 vs microVM vs 浏览器环境的选择模型
7.2 长运行 Agent 的可靠状态
- 上下文压缩时的信息丢失如何量化?
- 如何从持久化工件恢复,而非依赖压缩历史?
7.3 原生追踪故障诊断
- 让追踪(trace)成为系统的一等公民,而非事后分析
- 从轨迹中自动归因故障、生成回归测试
7.4 Agent ↔ 工具 ↔ 人类 的标准交接
- 交接内容:意图、约束、权限、工件、预算、风险级别...
- 既要足够丰富保证安全,又要足够简单便于采用
7.5 随模型改进的自适应简化
- 模型变强后,某些 Harness 干预可能变成负担
- 需要机制自动消融、优化、简化 Harness 层
八、对开发者的意义
8.1 技能转变
| 从 | 到 |
|---|---|
| 写代码 | 设计 Harness |
| 调试程序 | 调试 Agent 行为 |
| 单元测试 | Harness 验证策略 |
| 代码审查 | Agent 输出审查 |
8.2 面试加分项
如果你正在面试 AI 相关岗位(比如字节 CQC 大模型运营),理解 Harness 可以让你这样回答:
"我理解 Agent Harness 是包裹 LLM 的工程基础设施层。在内容风控场景中,Harness 负责管理审核规则的上下文(C层)、调用分类模型工具(T层)、编排多轮审核流程(L层)、监控模型效果指标(V层)。优化 Harness 结构可能比换模型更能提升审核准确率。"
8.3 学习路径
1. 先用 Claude Code / Codex 实际体验 Agent 编程
2. 阅读 LangChain 的 The Anatomy of an Agent Harness
3. 研究 OpenAI 和 Anthropic 的工程博客
4. 尝试自己构建一个简单的 Harness(工具调用 + 记忆)
5. 关注 ETCLOVG 七层模型,系统性理解
九、写在最后
2026 年,AI 工程正在经历一场静默的革命。
一年前,大家还在比拼谁的模型参数更多、训练数据更大。今天,行业共识已经转向:模型是燃料,Harness 是引擎。
OpenAI 用 Harness 实现了 10 倍开发速度。Anthropic 用 Harness 让 Claude Code 自举开发。LangChain 把 Harness 变成可复用的基础设施。Martin Fowler 把它定义为软件工程的新分支。
对于普通开发者来说,这意味着:
- 你不需要训练模型,但你需要理解如何驾驭模型
- Prompt 工程只是起点,Harness 工程才是终点
- Agent = Model + Harness,两者缺一不可
2026 年,Harness Engineering 正在成为 AI 工程化最核心的基础设施。现在理解它,正是时候。
参考资源
- OpenAI — Harness engineering: leveraging Codex in an agent-first world (2026-02)
- Anthropic — Effective harnesses for long-running agents (2025-11)
- Anthropic — Scaling Managed Agents: Decoupling the brain from the hands (2026-04)
- LangChain — The Anatomy of an Agent Harness (2026-03)
- Martin Fowler — Harness engineering for coding agent users (2026-04)
- 综述论文 — Agent Harness Engineering: A Survey (OpenReview 2026)
- 核心论文 — How Much Heavy Lifting Can an Agent Harness Do? (arXiv 2026)
- GitHub 仓库 — github.com/Gloriaameng/Awesome-Agent-Harness
本文持续更新。如果你有好的实践或发现,欢迎分享。