Spec→实现→结晶:一种让 AI 项目不失控的纪律框架

问题:AI 让"开始"变得太容易了

用 AI 写代码,5 分钟出一个 MVP。用 AI 设计方案,10 分钟出一份完整文档。

但你什么时候见过 AI 帮你把一个项目收尾的?

AI 擅长起头——给它一个模糊的想法,它能展开成看起来很有模样的东西。但 AI 极不擅长:

  • 判断"需求到底确定了没"
  • 确保方案和需求一致
  • 在执行完后确认"这事儿真的做完了"

这就是为什么很多 AI 辅助的项目会失控——不是技术不够,是没有纪律。开始太容易、结束太模糊、中间全是假设。

本文介绍一套我实际使用的纪律框架:Spec Pipeline。它不复杂——5 个阶段,每个阶段有明确的输入/输出/门禁。关键是:不让 AI 跳阶段。

全景

阶段 1:需求收敛

为什么不能直接"写方案"

最常见的反模式:用户说"帮我设计 XX 功能",AI 立刻开始输出方案。

问题在于——你确定你知道 XX 功能要做什么吗?

需求收敛做的事:

  1. 界定本轮核心对象 — 这次到底在做什么
  2. In Scope / Out of Scope — 做什么、不做什么
  3. 成功信号 — 做完了长什么样
  4. 关键未知 — 哪些问题还没答案
  5. Ready Gate — 以上都清楚了才放行

Ready Gate 的实际格式

## Ready Gate 判定
 
| 维度 | 状态 | 证据 |
|:---|:---|:---|
| 核心对象定义 | ✅ | 需求文档第 1-3 段 |
| In/Out Scope | ✅ | 明确列出 |
| 成功信号 | ✅ | 3 条可验证标准 |
| 关键未知 | ⚠️ 1 项待定 | 数据源接口尚未确认 |
| 结论 | ✅ 放行 | 待定项不阻塞设计骨架 |

关键纪律:Ready Gate 没过 = 不允许进入方案设计。哪怕 AI 已经开始"自动"生成方案了——你也要打断它。

阶段 2:苏格拉底访谈

通过 Ready Gate 后,不是直接写方案——而是先做一轮结构化追问

为什么?因为用户对自己需求的理解往往有盲区。Ready Gate 确认了"大方向清楚",但设计细节里藏着很多隐含假设。

苏格拉底访谈的规则:

  • AI 提问 3-5 轮,每轮 2-3 个关键设计决策点
  • 用户回答后,AI 整理为 clarified_context.md
  • 如果用户说"我想清楚了,直接开始"——可以跳过

不要用 AI 自己假设答案替代追问。 这是防"假定稿"的第一道防线。

阶段 3:摄入→门禁→起草

这是方案设计的核心三步,模式固定:

摄入 (Ingest)

把所有设计输入整理为标准化 Context:

  • 需求收敛产物
  • 苏格拉底访谈记录
  • 相关技术约束
  • 参考材料

门禁 (Validate)

在起草方案前做一次预检:

  • Context 是否完整?
  • 有没有自相矛盾?
  • 关键依赖是否已确认?

门禁失败就回退——不要带着缺口往前走。

起草 (Draft)

门禁通过后,AI 生成方案草稿。这里 AI 发挥最大价值——结构化、格式化、补充技术细节。

但请注意:草稿就是草稿。它是你审阅的对象,不是可以直接执行的定稿。

好的草稿应该包含:

  • 明确的方案边界
  • 核心流程图
  • 关键约束与 trade-off
  • 标注了"这是假设"的部分

阶段 4:结晶 (Crystallize)

结晶是最容易被跳过、也最关键的阶段。

结晶 ≠ 归档。 归档是"我把文件放好了"。结晶是判定一个变化是否已经真的成立

结晶做 4 件事:

步骤做什么判定什么
1. 条件确认方案是否经过验证"这个结论成立了吗?"
2. 现实回写把新事实写入系统"哪些地方需要更新?"
3. 状态收口当前任务是结束/继续/拆分"这事完了还是没完?"
4. 可发现性确保后续能找到这个结果"三周后还能找到它吗?"

为什么不能跳过结晶

跳过结晶会导致:

  • 方案写了但"不算数"——没有明确说"这版定了"
  • 相关文件没更新——项目状态还是旧的
  • 下次打开项目不知道上次做到哪了

结晶的核心价值:让"做完了"变成一个可验证的状态,而不是一个模糊的感觉。

阶段 5:验证 (Verify)

最后一步:检查结晶产物是否完整。

实战示例

用一个真实的个人项目(内容运营工具)走一遍完整 pipeline:

🎯 需求收敛 (15 min)
   → "我要一个把 Markdown 内容分发到多平台的工具"
   → In Scope: 微信公众号 + 知乎
   → Out of Scope: 视频平台
   → 成功信号: 写一篇文章,一键推送到 2 个平台
   → Ready Gate: ✅ 通过

💬 苏格拉底访谈 (10 min)
   → "图片怎么处理?" → 统一用图床
   → "格式差异怎么办?" → 各平台适配层
   → "认证方式?" → 初期手动 token

📥 摄入 → 🚦 门禁 → 📝 起草 (30 min)
   → Context 完整,无矛盾
   → 草稿产出: 架构图 + 3 个模块定义 + API 接口

💎 结晶 (10 min)
   → 条件确认: 方案可行,无阻塞依赖
   → 现实回写: 项目 README 更新状态为 "spec done"
   → 状态收口: active → 进入执行阶段
   → 可发现性: 索引已注册

✅ 验证 (5 min)
   → 6 个文件全部存在
   → 链接有效
   → Pipeline 完成

总耗时:~70 分钟。比"直接让 AI 写代码然后反复修"快得多——因为方向不会跑偏。

关键纪律总结

纪律为什么
不跳 Ready Gate避免在需求模糊时就开始设计
不跳苏格拉底访谈避免 AI 用假设填补盲区
不跳门禁避免带着矛盾做设计
不跳结晶避免"做了但不算数"
不跳验证避免遗漏和不一致

所有纪律的共同目标:让 AI 的概率性产出通过确定性检查点,变成可靠的工程产物。

你可以带走什么

  1. 最小可用版:只用"需求收敛 → 草稿 → 结晶"三步。跳过中间的苏格拉底/门禁——但这三步不能省。

  2. 核心心智模型:AI 生成的东西永远是"草稿"。从草稿到"正式"需要一个显式的结晶仪式。哪怕只是写一句"confirmed: this is the spec we're executing against"。

  3. 反模式识别:如果你发现自己在"边做边定义需求"——说明你跳了需求收敛。如果你发现项目"做了很多但不知道做完没"——说明你跳了结晶。


这套框架不是为了让事情变慢——而是为了让事情不返工。在 AI 协作中,你花在前段收敛和后段结晶上的时间,会在执行阶段以"不走弯路"的形式 10 倍返还。

Comments