Harness Engineering 简介与主流实践
一、什么是 Harness Engineering
Harness Engineering 是近两年 AI Coding 领域的新概念。
核心目标:
让 AI 从「代码生成工具」升级为「可管理的软件工程执行系统」。
传统 AI 编码:
人 -> Prompt -> AI -> 代码
Harness Engineering:
人
-> Spec(规范)
-> Plan(计划)
-> Agent 执行
-> Review(审查)
-> Verify(验证)
-> 交付
一句话:
不再只是「让 AI 写代码」,而是「让 AI 按工程流程完成开发」。
二、为什么 Harness Engineering 会流行
传统 Prompt Engineering 在团队场景里常见问题:
- 不可复现
- 不可追踪
- 不可审计
- 难以团队协作
- AI 输出不稳定
因此行业越来越多地在谈 Spec-Driven Development(SDD)——用规范驱动 AI 开发。
核心思想:
Spec 是真相
Code 是 Spec 的实现
三、当前主流工作流
目前大多数 Harness 框架采用相近流程:
1. Brainstorm(需求澄清)
AI 先调研、提问、澄清需求,而不是直接写代码。
2. Design(设计)
生成并沉淀:
design.mdarchitecture.mdapi.md
把「聊天内容」变成正式设计文档。
3. Plan(任务拆解)
将需求拆成 AI 可执行任务,例如:
1. 创建接口
2. 编写数据库迁移
3. 编写测试
4. 更新文档
4. Execute(执行)
由 AI Agent 自动:写代码、改代码、执行命令、调用工具、编写测试。
5. Verify(验证)
验证:
- 是否符合 Spec
- 是否通过测试
- 是否满足业务要求
这是当前最难的一步(见第六章)。
四、当前主流 Harness 框架
1. OpenSpec
| 定位 | Spec-Driven Development 标准化框架 |
| GitHub | Fission-AI/OpenSpec |
| 站点 | openspec.dev |
特点:
- 强调 Spec-first
- proposal / design / tasks 三段式
- 企业化、可协作程度高
适合:长期项目、团队协作、企业研发
2. Superpowers
| 定位 | Skill 驱动的 Agent 工作流框架 |
| GitHub | obra/superpowers |
特点:
- 强调 Skill 组合
- 子 Agent 能力强
- TDD、分阶段计划等 Skill 较完整
适合:自动化程度较高的项目、多 Agent 协作
3. gStack
| 定位 | 虚拟 AI 软件团队(扩展 Claude Code) |
| GitHub | garrytan/gstack |
特点:
- CEO / PM / QA 等角色化 Agent
- 自动规划(Autoplan)
- 流程感强,含浏览器 QA 等能力
适合:大型 Agent Workflow、AI 团队模拟
4. Compound Engineering(CE)
| 定位 | AI-native 工程循环框架 |
| GitHub | EveryInc/compound-engineering-plugin |
特点:
- 强调持续迭代与复利式知识沉淀
- 深度规划能力强
- 长期演化、体系化建设
适合:长生命周期项目、AI 工程体系建设
5. Everything Claude Code(ECC)
| 定位 | Claude Code 工程增强体系 |
| GitHub | affaan-m/everything-claude-code |
特点:
- Playwright 自动验证
- E2E 测试
- Research 工作流
- 社区讨论与迭代活跃
适合:Claude Code 深度使用、Web 自动化验证
五、行业当前共识
目前行业逐渐形成的一条讨论方向是:未来竞争力更多来自
Workflow
+ Spec
+ Verification
+ Agent Runtime
而不只是
Prompt 技巧
这不等于 Prompt 无用,而是团队场景下 流程与验证 权重上升。
六、当前最大问题:自动化验证(Verify)
例如:
- AI 写代码
- AI 写测试
- AI 自己验证通过
那么:
谁来保证 AI 没有「自欺欺人」?
这是行业目前仍未完全解决的问题。一种常见讨论是 Builder Agent ≠ Verifier Agent,由不同角色或模型做交叉验证。
七、为什么 Playwright 很重要
当前很多框架在谈自动验证时会提到 Playwright:
浏览器是相对统一的运行环境。
因此 Claude Code、ECC、OpenHands、gStack 等路径上,常见 Playwright + E2E 作为功能验证的补充手段(不能替代人工验收业务语义)。
八、当前成熟度
| 能力 | 成熟度 |
|---|---|
| 需求澄清 | 高 |
| Design 持久化 | 高 |
| Plan 拆解 | 高 |
| 多 Agent 协作 | 高 |
| Lint / Unit Test | 高 |
| 功能自动验证 | 低 |
「自动功能验证」仍是整个行业最薄弱的环节。
九、未来发展方向
未来 Harness Engineering 可能继续演化的方向(观察,非定论):
1. Agent Runtime OS
- Agent 操作系统
- AI 工程运行时
2. 独立验证 Agent
Builder Agent
!=
Verifier Agent
通过不同模型或不同上下文交叉验证。
3. 长期 Agent Memory
- 项目记忆
- 设计记忆
- 任务记忆
支持长期维护同一代码库。
十、推荐关注项目
| 项目 | 特点 | GitHub |
|---|---|---|
| OpenSpec | 标准 SDD | Fission-AI/OpenSpec |
| ECC | Claude Code 工程增强 | affaan-m/everything-claude-code |
| gStack | 多角色 Agent | garrytan/gstack |
| Superpowers | Skill 工作流 | obra/superpowers |
| Compound Engineering | 工程循环插件 | EveryInc/compound-engineering-plugin |
| OpenHands | Agent Runtime 强 | OpenHands/OpenHands |
| Claude Code | Agent IDE(官方) | anthropics/claude-code |
| Roo Code | VS Code Agent | RooCodeInc/Roo-Code |
| Aider | 轻量结对编程 | Aider-AI/aider |
| Playwright | 浏览器 E2E | microsoft/playwright |
十一、总结
Harness Engineering 本质上是 AI 软件工程体系。
它正在把:
Human Coding
逐渐演化为:
Human Specification
+
AI Execution
+
AI Verification
这是 AI Coding 从「工具」走向「工程系统」的重要阶段。