2026 年 AI 编码的渐进式 Spec 实战指南

一句话概括

介绍如何通过渐进式编写规格说明(Spec)来引导 AI 编码助手高质量完成开发任务的实战方法论。

实践内容

1. 三个基础认知

大模型能力边界:当前顶级模型可独立完成中等复杂度编码任务(理解需求、读代码、写实现、修编译错误),但仍需人审查结果。模型之间性能差异断崖式,T0 模型三轮搞定的事 T2 可能 15 轮还不一定对。

Agent 本质:Agent = while 循环 + Tool Use + 工具执行器。“智能”来自模型,“能力”来自工具,“自主性”来自循环。工具的边界就是 Agent 的能力边界。

软件复杂度视角(来自《人月神话》):软件复杂度 = 本质复杂度(业务逻辑本身,不可消除)+ 偶然复杂度(工具/流程引入的额外负担,可以且应该被消除)。评判标准:一个方案好不好,看它能多高效地帮你应对本质复杂度,同时自身引入的偶然复杂度有多低。

2. 渐进式 Spec Coding 框架

Spec Coding 三条铁律

  • No Spec, No Code — 没有文档,不准写代码
  • Spec is Truth — 文档和代码冲突时,错的一定是代码
  • Reverse Sync — 发现 Bug,先修文档,再修代码

核心设计:渐进式复杂度:不同复杂度的需求暴露不同深度的流程。70% 的需求是 ≤5 人日的小需求,简单需求不承担复杂流程的成本。Rules 始终生效,Spec 按复杂度加载。

自我迭代:prompt、模板、rules 都是代码库中的普通文件,随 Git 版本演进。知识飞轮:需求实践 → 踩坑 → 沉淀 knowledge / 更新 prompt / 修改模板 → AI 更准。

目录结构

code_copilot/
├── rules/          # Project Rules(始终生效)
├── knowledge/      # 领域知识(按需加载)
├── agents/         # Agent 配置与提示词
├── changes/        # 变更管理
└── archives/       # 已完成变更的归档

3. 工作流:Propose → Apply → Review → Archive

  • Propose:人主导,AI 辅助。Research 代码现状 → 逐个提问收敛不确定性 → 分段生成 spec(每段确认)→ 生成 tasks → HARD-GATE 确认(待澄清全部解决前不允许进入 Apply)
  • Apply:AI 主导,人审查。逐 task 执行,每个 task 完成后展示验证证据,零偏差原则
  • Review:两阶段 Sub Agent 审查(Spec Compliance + Code Quality),上下文与实现者隔离
  • Archive:知识沉淀,逐条确认 log.md 中的发现是否沉淀到 knowledge/
  • Debug:四阶段调试:根因调查 → 模式分析 → 假设验证 → 实施修复

4. 工具选型:编排层 + 执行层两层架构

  • 编排层(强模型如 Claude Opus):理解需求、生成 Spec、审查结果
  • 执行层(编码工具如 Claude Code / opencode):读写代码、执行命令、运行测试

透明度底线:模型型号+版本可见、完整 context 可查、原始输出不被篡改、token 用量透明。在不透明的工具上花再多时间优化 prompt,效果都无法归因、无法复现。

5. 核心观点

  • 人的角色从”全干”变成”管和验”:管控(控制 AI 看什么)、指挥(选方案、审计划、批准执行)、评价(验收结果、发现偏差)
  • 知识底座才是真正的护城河:团队之间的差距不在于用什么工具,而在于积累了多少高质量的、结构化的领域知识
  • 自由度曲线:调研(中)→ 方案设计(高)→ 规划(低)→ 执行(零)→ 验收(中)

摘录

当前顶级模型可以独立完成中等复杂度的编码任务——理解需求、读代码、写实现、修编译错误,但仍需人审查结果。它们没有持久记忆、没有自主意图,只处理你给它的上下文。核心结论:模型是地基,方法论是上层建筑。地基不行,上面盖得再好也白搭。

Agent = while 循环 + Tool Use + 工具执行器。这个循环就是 Agent 的全部——“智能”来自模型,“能力”来自工具,“自主性”来自循环。关键理解:工具的边界就是 Agent 的能力边界。给它读写文件的工具,它能改代码;不给它网络工具,它就上不了网。

渐进式复杂度是框架的核心卖点。其他方案都假设所有需求都值得走完整流程,但现实中并非如此——70% 的需求是 ≤5 人日的小需求。不同复杂度的需求,暴露不同深度的流程。这本质上是在压缩偶然复杂度:只有本质复杂度够高时,才引入对应重量的流程。

Spec Coding 三条铁律:No Spec, No Code — 没有文档,不准写代码;Spec is Truth — 文档和代码冲突时,错的一定是代码;Reverse Sync — 发现 Bug,先修文档,再修代码。把需求、约束、代码现状写进 Spec 作为高质量输入,AI 不用反复试错,对话轮次从 20 轮降到 3-5 轮,总成本反而更低,效果反而更好。

透明度不是奢侈品,是基础需求。透明度底线:模型型号+版本可见、完整 context 可查、原始输出不被篡改、token 用量透明。在不透明的工具上花再多时间优化 prompt 和框架,效果都无法归因、无法复现。切到透明工具链后,每次调优都能看到效果,迭代速度指数级提升。

往长远看,AI 编码工具会越来越同质化,团队之间的差距不在于用什么工具,而在于积累了多少高质量的、结构化的领域知识。这才是真正不可复制的护城河。一个没有 knowledge/ 的 Spec 框架,就像让一个刚入职的应届生对着编码规范写代码——规范他都能遵守,但业务逻辑全靠猜。

涉及实体

  • Claude Code(Anthropic 官方终端 AI 编码 Agent)
  • opencode(开源终端 AI 编码 Agent)
  • Cursor / Windsurf(IDE 内交互式 AI 搭档)
  • Cline / Aider(终端/IDE 插件)
  • Chatbot Arena / LMSYS(模型评测平台)
  • Gemini 3.1 Pro、Claude Sonnet 4.6(模型)
  • 《人月神话》(Frederick Brooks)
  • Superpowers(agentic skills 框架)
  • Simon Willison(Agentic Engineering Patterns)

涉及主题

  • AI编码
  • Spec驱动开发
  • 提示工程