AI Harness 工程崛起:Agent 的操作系统
架构师点评:AI Harness 是模型与企业系统之间的工程中间层。没有 Harness,Agent 只能回答问题;有了 Harness,Agent 才能安全地调用工具、执行流程、沉淀状态并进入生产链路。
写在前面:2026 年,OpenAI 和 Anthropic 不约而同地使用了一个新术语——Harness。这不是流行词,而是决定 AI Agents 能否在生产环境真正工作的缺失架构层。
一、核心定义:Harness 不是什么
1.1 一个精妙的类比
2025 年 6 月,Philipp Schmid 提出了一个被广泛引用的计算机架构类比:
| 计算机组件 | 图标 | AI Agent 对应 | 作用 |
|---|---|---|---|
| CPU | 🖥️ | Model (模型) | 原始处理能力 |
| RAM | 💾 | Context Window (上下文窗口) | 有限工作记忆 |
| OS | ☁️💻 | Agent Harness | 操作系统 |
| Application | 🖥️ | Agent (智能体) | 最终应用 |
核心洞察:
1 | Harness ≠ Agent |
1.2 为什么需要 Harness?
没有 Harness 的 Agent 就像没有操作系统的 CPU:
| 问题 | 没有 Harness | 有 Harness |
|---|---|---|
| 上下文管理 | 手动加载,容易溢出 | 自动压缩 + 检索 |
| 工具调用 | 硬编码,难以扩展 | 声明式注册,即插即用 |
| 错误处理 | 每次都要自己实现 | 内置重试 + 恢复 |
| 子任务编排 | 无法管理 | 可 spawn 多个子 Agent |
| 记忆持久化 | 会话结束即丢失 | 向量数据库长期存储 |
| 安全控制 | 无防护 | 敏感操作需人工批准 |
Harness 的目标:让模型专注于推理,其他一切都自动化。
二、架构位置:Harness 与 SDK/Framework 的关系
2.1 四层架构栈
1 | ┌─────────────────────────────────────────┐ |
关键理解:
- SDK/Framework/Scaffolding 回答的是”如何构建“AI Agent
- Harness 回答的是”如何运行“AI Agent
- Harness 不是替代品,而是更高的一层
2.2 实际例子
| 项目 | 构建方式 | Harness |
|---|---|---|
| Claude Code | Anthropic SDK | Anthropic 自研 Harness |
| OpenAI Codex | OpenAI API | OpenAI 自研 Harness |
| OpenClaw | 多模型 API | 自研 ACP Harness |
三、Harness 的六大核心组件
根据 parallel.ai 团队的研究,结合 OpenAI/Anthropic 的实践,Harness 包含六个核心组件:
3.1 工具集成层 (Tool Integrations)
职责:通过定义的协议将模型连接到外部 API、数据库、代码执行环境和自定义工具。
设计要点:
1 | # 声明式工具注册 |
OpenClaw 实现:
1 | # OpenClaw 工具注册配置 |
3.2 内存与状态管理 (Memory & State)
职责:多层内存管理,在单个上下文窗口之外持久化状态。
三层记忆架构:
| 层级 | 存储内容 | 访问方式 | 示例 |
|---|---|---|---|
| 工作记忆 | 当前任务状态 | 内存驻留 | 进行中任务的中间结果 |
| 短期记忆 | 对话历史 | 自动加载 | 最近 10 轮对话 |
| 长期记忆 | 向量数据库 | 检索召回 | 用户偏好、历史决策 |
OpenClaw 实现:
1 | // OpenClaw 记忆系统架构 |
Anthropic 的方法:使用进度文件 (.progress.md) 和 git 历史记录来桥接会话,实现跨会话记忆。
3.3 上下文工程 (Context Engineering)
职责:动态策划每次模型调用中出现的信息,而不是静态的提示模板。
核心挑战:模型上下文窗口有限(如 128K),如何管理?
Harness 的解决方案:
1 | 1. 上下文压缩 |
OpenClaw 实现:
1 | // 上下文管理器 |
3.4 规划与路由 (Planning & Routing)
职责:引导模型通过结构化的任务序列,而不是试图一次性完成所有事情。
任务分解流程:
1 | 用户任务 → 意图理解 → 任务分解 → 子任务执行 → 结果汇总 |
OpenClaw 的子 Agent 编排:
1 | 主 Agent (协调者) |
关键设计:
- 工作空间隔离 - 每个子 Agent 有自己的私有目录
- 记忆共享 - 共享 MEMORY.md 和关键文档
- 主 Agent 审核 - 合并前需要主 Agent 审核
3.5 验证与防护 (Validation & Guardrails)
职责:输出检查、格式验证、安全过滤器、自我纠正循环。
安全层级:
1 | ┌─────────────────────────────────┐ |
OpenClaw 实现:
1 | // 执行批准流程 |
3.6 模块化与可扩展性 (Modularity & Extensions)
职责:可插拔组件,可以独立启用、禁用或替换。
OpenClaw 插件架构:
1 | // 插件接口 |
四、生产环境中的真实 Harness
4.1 Claude Code
Claude Code 本质上是一个 Harness:
- ✅ 读取整个代码库
- ✅ 管理文件系统访问
- ✅ 生成子 agent(如 test-runner、linter)
- ✅ 处理工具编排
- ✅ 跨会话维护内存(
.progress.md) - ✅ 实现防护(敏感操作需确认)
用户体验:
1 | $ claude "添加用户登录功能" |
开发者专注于任务,Harness 管理其他所有事情。
4.2 OpenAI Codex
OpenAI 团队的实践:
- 构建了超过 100 万行 的代码库
- 完全没有手动输入的代码
- Harness 作为主要接口
关键实践:
- 上下文工程 - 维护代码库的向量索引
- 架构约束 - 定义代码规范和目录结构
- 定期清理 - Agent 自动重构和清理代码
- 反馈循环 - 当 Agent 遇到困难时,改进存储库
4.3 OpenClaw ACP Harness
OpenClaw 的 Harness 实现:
1 | ┌─────────────────────────────────────┐ |
关键特性:
| 特性 | 实现方式 |
|---|---|
| Thread Binding | Discord 线程绑定到 Session |
| 流式交付 | 分块 coalesce,避免 rate limit |
| 故障恢复 | Gateway 重启后从 SQLite 恢复 |
| 并发控制 | 每 Account 最大并发 Session 数 |
| 幂等性 | 所有命令带 idempotency key |
Session 状态机:
1 | creating → idle → running → idle |
五、为什么 Harness 很重要?
5.1 对开发者的价值
| 价值 | 说明 |
|---|---|
| 降低门槛 | 不用重复造轮子,专注业务逻辑 |
| 提高效率 | 内置最佳实践,开箱即用 |
| 保证质量 | 内置错误处理、重试、日志 |
5.2 对企业的价值
| 价值 | 说明 |
|---|---|
| 可审计 | 所有操作有日志,可追溯 |
| 可控制 | 敏感操作需批准,风险可控 |
| 可扩展 | 插件化架构,按需扩展 |
5.3 对未来的意义
Harness 是 AI Agent 大规模应用的基础设施:
1 | 2024-2025: Agent 探索期 (各种 Framework 涌现) |
类比历史:
- 1980s:个人电脑爆发 → 需要操作系统
- 2000s:智能手机爆发 → 需要 iOS/Android
- 2020s:AI Agent 爆发 → 需要 Harness
结论:今天的 Harness = 明天的操作系统
六、总结
核心要点回顾
- Harness ≠ Agent,Harness 是管理 Agent 如何运行的系统
- 架构位置:Harness 在 SDK/Framework 之上,是运行时管理层
- 六大组件:工具集成、记忆管理、上下文工程、规划路由、安全验证、模块化扩展
- 生产案例:Claude Code、OpenAI Codex、OpenClaw ACP
- 未来趋势:Harness 将成为 AI Agent 的标准基础设施
下一步
- 第 99 篇:《AI Harness 实战:Thread-Bound Agent 的完整链路》
- 第 100 篇:《100 篇博客复盘:用 AI Harness 管理技术写作》🎯
参考资源
- Philipp Schmid 的计算机类比
- parallel.ai 团队研究
- OpenAI Codex 技术博客
- Anthropic Claude Code 文档
- OpenClaw ACP 架构文档:https://docs.openclaw.ai/experiments/plans/acp-thread-bound-agents.md
- Martin Fowler 关于 Harness 的文章
本文是 AI Harness 系列的第 98 篇,下一篇将深入实战,详解如何在 OpenClaw 中实现完整的 Harness 系统。
企业落地建议
这篇文章对应 OpenClaw / AI Agent 平台化落地中的关键能力,建议企业推进时重点关注:
- 把工具、权限、上下文、任务、记忆、观测统一纳入 Harness:而不是散落在 prompt 中。
- 所有外部系统调用都通过可审计工具网关:避免模型直接操作生产资源。
- 把 Harness 能力产品化为可复用工作流:例如 PR 审查、发布检查、故障排查。
- 为 Harness 建立 SLO:任务成功率、人工接管率、工具失败率、恢复耗时。:为 Harness 建立 SLO:任务成功率、人工接管率、工具失败率、恢复耗时。
相关入口:
- AI Agent 专题:多 Agent、Loop Agent、工具调用与长期任务设计
- OpenClaw 专题:OpenClaw 配置、插件、记忆、频道接入和私有化实践
- PR 审查官产品页:多 Agent 协作在代码审查场景的产品化落地
- 企业 AI Agent / AI Coding 咨询:平台架构设计、插件生态、私有部署与团队内训
OpenClaw 相关实践的核心价值,是把 Agent 从“单次对话能力”推进到“可部署、可治理、可复用的企业级协作平台”。