规格驱动开发与 Harness Engineering:AI 时代的软件工程新范式

在 AI 编程工具(如 Cursor、Claude Code)飞速发展的今天,如何让 AI 真正成为工程团队的高效助手,而非制造技术债务的源头?答案在于两个核心理念:规格驱动开发(SDD)Harness Engineering

一、什么是规格驱动开发(SDD)

规格驱动开发(Spec-Driven Development,简称 SDD)是一种以规范(Specification)为核心的开发方法论。它不同于传统的「Vibe Coding」——那种跟着感觉走、让 AI 自由发挥的方式。

SDD 的五大核心原则

原则说明
规范是通用语言产品、设计、工程、测试都能读懂同一份规范
可执行规范规范可以直接转化为测试用例
持续精化规范随需求变化不断迭代完善
研究驱动的上下文AI 需要深入理解业务背景,而非盲目实现
双向反馈规范影响实现,实现也反馈修正规范

SDD vs Vibe Coding

维度SDDVibe Coding
可预测性✅ 高❌ 低
上下文管理✅ 结构化❌ 碎片化
幻觉控制✅ 有约束❌ 自由发挥
适合场景生产项目原型验证

二、Harness Engineering:Agent 的工程基础设施

Anthropic 在其技术报告中提出了一个核心公式:

Agent = Model + Harness

这里的 Harness(测试架/控制系统)指的是:让模型能力稳定输出的工程基础设施。

三层关系

Prompt ⊂ Context ⊂ Harness

- Prompt:单次交互的指令
- Context:会话级上下文(记忆、历史)
- Harness:项目级工程系统(工具、流程、约束)

Harness 的六层架构

层级名称类比作用
L1信息边界层岗位说明书定义 AI 能访问什么信息
L2工具系统层办公工具API、脚本、命令行工具
L3执行编排层标准操作流程定义操作的标准步骤
L4记忆与状态层项目管理系统持久化上下文、知识库
L5评估与观测层质检流程验证输出质量
L6约束与恢复层红线和应急预案防止灾难性错误

三、实际应用案例

Anthropic 的 GAN 三智能体模式

Anthropic 在 MCP 协议开发中采用了 GAN 模式:

Planner (产品视角)
    ↓ 规格
Generator (AI Agent)
    ↓ 实现
Evaluator (测试视角)
    ↓ 反馈
    ↓ (循环)

三个智能体相互对抗、相互完善,最终收敛到高质量的规范和实现。

OpenAI 的实验数据

OpenAI 内部实验显示:

  • 团队规模:3 人
  • 开发时间:5 个月
  • 人工代码:0 行
  • 最终成果:100 万行生产级代码

前提是构建了完善的 Harness 系统。

四、为什么 Harness 如此重要

同一个模型,换个工具格式,分数从 6.7% 飙升至 68.3%

这说明:

  • 模型决定上限:模型能力决定 AI 能做到什么
  • Harness 决定底线:工程系统决定 AI 能否稳定发挥

五、如何构建个人/团队的 Harness

1. 建立规范优先的文化

# SPEC.md 示例结构
## 背景与目标
- 为什么做这个功能?
- 成功标准是什么?

## 用户故事
- 谁会用这个功能?
- 使用场景是什么?

## 技术规格
- API 接口设计
- 数据模型
- 边界条件

## 验收标准
- 功能测试用例
- 性能指标
- 安全要求

2. 构建工具链

  • Linter/Formatter:统一代码风格
  • Type Checker:TypeScript/Python 类型检查
  • 测试框架:自动化验收测试
  • CI/CD:自动化质量门禁

3. 建立反馈机制

  • AI 生成代码 → 自动测试 → 结果反馈 → 修正规范
  • 每次迭代都让规范更精确

六、总结

在 AI 编程时代:

  1. 不要让 AI 裸奔:没有 Harness 的 AI 就像没有安全带的赛车
  2. 投资规范就是投资效率:好的规范能减少 80% 的返工
  3. Harness 是核心竞争力:同一模型,好的 Harness 能发挥 10 倍效能

规格驱动开发 + Harness Engineering,是 AI 时代软件工程的最佳拍档。