从Chat驱动到OpenSpec驱动:AI Coding工程化升级

0 阅读1分钟

很多团队对 AI Coding 的第一印象都差不多,把需求、接口、页面截图丢进会话窗口,几分钟就能拿到一版代码,对小改动来说这种体验几乎是颠覆式的。团队也很自然形成惯性——既然 AI 已经能写,那就继续把更多需求直接塞给会话。

问题恰恰出在这里:真正拖垮团队的,往往不是 AI 写得慢、也不是 AI 完全不会写,而是它经常在一个看起来很顺的过程中把事情做偏,偏了以后,返工、review、补测、重新对齐的成本会集中爆发。

所以,当需求开始变复杂、协作开始变多人、交付开始变高频时,团队到底该怎么让 AI 稳定交付,而不是偶尔写对?

我们的判断是:当前阶段,团队更值得做的升级,不是继续堆 prompt 和代码规范,也不是急着上重平台,而是补一层规划机制,把默认工作方式从 Chat 驱动升级为 OpenSpec 驱动。

这里先明确三个概念:

  • Chat:把需求直接交给聊天窗口,由 AI 在会话上下文中边理解边实现
  • Cursor:当前主要的代码执行工具
  • OpenSpec:在编码前承接需求澄清、范围确认、任务拆分和验收口径的结构化规划载体

所谓“从 Chat 驱动到 OpenSpec 驱动”,不是把 Cursor 换掉,而是把聊天窗口从“唯一工作台”降级成“执行入口”。

1. 典型需求场景复盘

假设现在有一个很常见的需求:给电商后台新增“优惠券管理”能力。需求方通常会提供页面稿、接口草稿、大致业务规则,还会口头补充“这期先支持满减,后面可能再扩展折扣券”。

这类需求看似体量不大,却暗藏诸多容易跑偏的细节:列表页和创建页是否全覆盖、优惠券状态枚举与展示规则、新建字段必填校验分工、满减券的范围界定、已发券能否编辑、验收标准界定等,如果这些问题未在开发前明确,AI 很容易自行补全逻辑,替团队做了不该拍板的决策。

2. 三种实现路径对比

下面围绕“优惠券管理”这一需求,拆解三种典型落地路径,直观呈现不同模式的优劣差异。

2.1 纯Chat驱动模式

最常见的做法是直接把需求发给 AI:

“帮我给后台加一个优惠券管理模块,要有列表、新建、编辑,支持满减规则,按现有风格实现。”

AI 往往很快就能产出不少东西:

  • 页面骨架
  • 表单项
  • 接口调用
  • 一些校验逻辑
  • 甚至连状态标签和空态文案都帮你补上了

表面上看,这一轮开发体验极佳,但核心隐患会在后续逐步暴露:AI 默认新增编辑功能、自行界定优惠券编辑权限、状态枚举与后端脱节、额外预留扩展结构,最终导致代码已经有了,但需求还没真正对齐。此时团队并非推进开发,而是拿着生成的代码反向校对需求,越往后返工成本越高。

2.2 Chat+规范约束模式

团队吃过几次亏后,第一反应通常是继续加规则,做第二层补救:

  • 加代码规范
  • 加目录约束
  • 加命名规则
  • 加 prompt 模板
  • 加 review checklist

叠加代码规范、目录约束、命名规则等约束条件,确实能让AI输出更贴合团队标准、减少低级错误,但这只能缓解问题,无法根治核心痛点。究其原因,开发前缺少稳定的规划层承接需求,后续所有约束都只能在执行阶段补救,此时再澄清范围、消除歧义、补全验收口径,不仅成本偏高,还容易出现信息失真。

AI Coding 工程化的核心,不是“让模型更听话”,而是在需求与代码之间搭建稳定中间层,明确本次开发范围、确认信息状态、拆分落地任务、界定验收标准与风险边界。缺少这层规划,再多规则也只是让AI在模糊目标上规范执行,依旧会跑偏,只是跑偏的形式更整齐,最终陷入代码规范统一、但review仍需反复核对需求的尴尬局面,问题根源不在实现层,而在开发前置环节。

这说明问题已经不在实现层,而在实现之前。

2.3 OpenSpec驱动模式

第三种做法不是让 AI 直接开写,而是先把这个需求放进一个结构化规划层里。

以刚才的优惠券需求为例,如果先走 OpenSpec,团队至少会先把下面这些问题显式写出来:

  • 本次目标:上线优惠券列表和创建能力,仅支持满减券

  • 本次非目标:不做折扣券,不做已发放优惠券编辑,不做批量操作

  • 已确认输入:页面稿、接口字段、状态枚举、基础校验规则

  • 待确认问题:过期券展示口径、停用状态是否允许恢复

  • 任务拆分:

  • 任务 1:定义数据结构与状态映射

  • 任务 2:完成列表页

  • 任务 3:完成创建页与表单校验

  • 任务 4:补充测试与交付说明

  • 验收口径:能创建满减券

  • 列表状态展示正确

  • 异常字段有明确提示

  • 未实现项不应以“预留”名义混入本期代码

这时候再让 Cursor 落地实现,整个流程会完全改观:AI 依旧负责代码编写,但无需替团队猜测范围、边界与优先级,只需执行拆解完毕的细化任务,而非应对模糊的宏观目标。这也是 OpenSpec 驱动与 Chat 驱动的本质差别:前者先收敛问题,再执行实现;后者通常是一边实现,一边暴露问题。

3. 案例核心启示

把上面的案例拆完,其实结论已经很清楚:很多返工并不是因为 AI 写不出代码,而是因为目标、边界、任务顺序和验收标准没有在编码前收敛。

一旦这些问题没有被提前说透,AI 就只能在实现过程中自己补完;它补得越快,后面返工暴露得往往也越晚。

所以这个案例真正说明的,不是“模型还不够强”,而是团队需要先把前半段交付链路稳定下来,再谈后半段如何更高效地执行。

4. 平台化?

当团队意识到交付不稳时,通常有两个直觉反应。第一种是前面说的继续堆规则。第二种是直接做重平台。比如:Skill 平台、MCP 工具链、多 Agent 编排、自动任务生成、全链路留痕和质量看板。

这里说的“平台化”,不是单指多接几个模型,而是把 AI Coding 从聊天式工具升级成一套贯穿需求、规划、编码、测试、review 和治理的系统能力。像 GitHub Copilot、Devin、Sourcegraph、Atlassian Rovo Dev,其实都已经在往这个方向推进:有的从 issue 和 PR 流程切入,有的从 Jira 和协作系统切入,有的从企业知识和多 Agent 编排切入。这说明平台化确实是长期方向,但也恰恰说明,在平台化之前,团队必须先跑顺自己的最小交付闭环。

平台化有没有价值?当然有。问题是,如果团队连“需求如何收敛”“任务如何拆”“验收如何定义”都还没有跑顺,那么平台化很容易放大复杂度,而不是放大交付能力。

最后常见的局面是:

  • 工具越来越多
  • 流程越来越重
  • 真正影响交付质量的前置问题仍然没有解决

所以在当前阶段,更现实的路线不是“做得更重”,而是“先补对位置”。

5. OpenSpec的适配价值

推荐 OpenSpec,不是因为它神奇,而是因为它刚好卡在一个合适的位置上。

它有几个现实优势:

  • 足够轻,不需要先启动一轮平台建设
  • 足够结构化,能承接目标、范围、非范围、任务和验收口径
  • 足够明确,便于 review、复盘和跨人协作
  • 足够贴近现有工具链,能和 Cursor 形成自然分工

更重要的是,它回答的是团队眼下最需要回答的问题:

如何在不显著拉长流程的前提下,把需求澄清、任务拆分和验收标准前置下来。

从这个角度看,OpenSpec 不是一个“替代编码工具的新工具”,而是一个“把交付前半段补齐的载体”。

6. 升级后的团队分工

如果默认工作方式升级为 OpenSpec 驱动,团队分工其实可以很简单:

  • OpenSpec:负责变更背景、范围边界、任务拆分、验收口径
  • Cursor:负责按拆分后的任务逐步实现代码
  • 自动化校验:负责 lint、测试、构建、静态检查
  • 人工 review / 验收:负责业务正确性、边界覆盖和最终合并判断

这里最关键的变化,不是多了一个新步骤,而是聊天窗口不再同时承担规划、实现、解释和验收说明四种职责

职责一旦拆开,很多原本混在一起的问题就会变得可管理。

7. 方案核心收益

很多人会问:这样做会不会让流程变长?

答案是:单次开始写代码的速度,可能不会更快;但复杂需求的总交付成本,大概率会下降。

因为它带来的收益主要不是“更快生成”,而是“更少返工”:

  • 信息缺口更早暴露
  • 任务拆分更容易控制范围
  • review 不用从头补背景
  • 验收不再靠印象判断
  • 同类需求在不同人之间更容易收敛出一致结果

这也是为什么很多团队到后期会发现,影响 AI Coding 上限的,往往不是模型代际升级,而是交付链路有没有被组织好。

8. 落地风险防控

引入 OpenSpec 之后,也有几个常见风险要提前防住。

第一,变成“只多了一份文档”。如果规划文件不能真正支撑需求决策,那团队只会觉得负担变重。

第二,任务虽然写进去了,但拆分仍然太粗。这样 AI 依然会在执行中偷偷补假设。

第三,团队把这次升级理解成“换工具”。其实本质从来都不是换工具,而是重组交付链路。

第四,最小闭环还没跑顺,就急着叠加多 Agent、Skill、MCP、质量看板等重能力。这样往往会再次把重点从“流程成立”带偏到“工具建设”。

所以最重要的控制点只有一句话:

先把最小闭环跑顺,再谈自动化和平台化。

9. 结论

团队前两个阶段,分别解决的是“能不能开始用 AI 写代码”和“能不能让 AI 写得更稳一些”;但还没有真正解决“能不能稳定交付”。而从“能写”走到“能稳定交付”,中间缺的往往不是更强模型,也不是更多规则,而是一层规划机制。因此,当前更合理的升级方向,不是继续把所有事情都压进聊天窗口,也不是马上建设复杂平台,而是先完成一次更务实的调整:

**把 Chat 从唯一载体降级为执行入口,把 OpenSpec 提升为默认规划载体,先把规划、执行、校验和验收这条最小闭环跑顺,**把 AI Coding 从“高手临场发挥”推进成“可复制的交付方式”。