应用层 · AI Coding
学习舱 / 应用层 / AI Coding

AI Coding:Vibe Coding 与驱动开发方法论

整理中 深度 · 应用 更新 2026-09-09

前置 Context 工程

AI Coding:Vibe Coding 与驱动开发方法论

一句话定位:从「跟 AI 聊着写」到「用工程纪律驾驭 AI 写」——按任务风险选择方法论层级:随手 vibe、规格先行、纪律门禁、全流程工程化。前置:Context 工程——AI 编码的所有方法论,本质都是喂给编码 Agent 的上下文纪律。

生成速度上去了,工程跟上了吗

一句话需求,AI 十分钟生成一个能跑的页面——Vibe Coding 的爽感是真的。2024 年起,「有想法就能做产品」成了现实;2025 年初,这种随手感开发的方式有了自己的名字。

第三天,需求变了一版,AI 改崩了另外两处;第五天,你发现自己已经读不懂自己「写」的代码;第八天,没人说得清系统现在的真实行为是什么。生成的速度是自然语言的速度,工程的消化速度还是人读代码的速度——落差每天都在扩大。

生成速度上去了,工程怎么跟上?这不再是「会不会用 AI」的问题,而是方法论分层的问题:不同风险的任务,配不同强度的纪律。

AI 编码方法论:四级阶梯 L1 随手 vibe 对话即开发 L2 规格先行 先写 spec 再生成 (OpenSpec · spec-kit) L3 纪律门禁 TDD 红绿重构 硬门禁 · 系统化调试 (Superpowers 技能集) L4 全流程 子代理分工 两级审查 Worktree 隔离 分支收尾六步 横轴不完全是时间线,更是风险线:原型可以常驻 L1,生产代码随生命周期上楼

图:四级阶梯——纪律强度逐级上升;选哪级看任务风险,不看技术潮流(图内工具与术语,正文均有解释)

渐进拆解:从卡丁车到车队

把 AI 编码比作开车——同一台发动机(模型),配不同强度的管理制度:

  • L1 随手 vibe:开卡丁车,场地封闭(一次性原型)时怎么爽怎么开。
  • L2 规格先行:考驾照学交规,先说清「要去哪、守什么规则」再上路。
  • L3 纪律门禁:开出租,计价器(测试)和年检(审查)是营运的法定成本。
  • L4 全流程:管物流车队,多车(子代理)、多线路(Worktree 隔离)、调度与验收成体系。

L1 → L2 的转折:角色转变

Vibe Coding 的真名是「角色转变」:人从写代码的,变成说清需求、验收结果的。AI 负责打字,人负责判断——但「说清需求」恰恰是工程里最难的一环。随手聊天说不清楚,就得在动手前把需求写成结构化文档——这份文档业界叫 spec(规格)。写不写它,就是 L1 与 L2 的分界。

L2 规格先行:先写 spec,再生成

2025 年起业界把它叫成规范驱动开发(Spec-Driven Development),并已工具化。GitHub 官方的 spec-kit 把流程串成六级:

  1. 立宪(项目原则)
  2. 规格(要什么、为什么)
  3. 计划(技术方案)
  4. 任务(拆解)
  5. 实现
  6. 收敛(对照规格检查偏差,不符就再来一轮)

另一条常用路线 OpenSpec 更轻:以「变更提案」为单位组织规格,改动留档可追溯,尤其适合在存量项目上做增量。

两家路数不同,定义可以浓缩成同一句话:先写 spec 再写代码,spec 是人和 AI 共同的事实来源。 这套打法直接针对 AI 编码的头号病症——代码漂移(AI 生成的速度超过人审查的速度,行为悄悄偏离意图)。

L3 纪律门禁:不信任「我做完了」

规格解决了「做什么」,门禁解决「做没做成」。Jesse Vincent(GitHub ID:obra)开源、社区广泛采用的 Superpowers 技能集把这一层做成了可安装的纪律包,核心是四样:

  • 头脑风暴到硬门禁:动手前先过 brainstorming 把模糊需求磨成设计文档,每一步走硬门禁(HARD-GATE)——不拿到人的明确批准,流程物理上过不去,而不是「提示词里说希望能确认一下」。
  • 计划三段:spec 定「做什么」,计划文档管「怎么一步步做」。计划分头部(目标、架构、全局约束)、任务清单(每步 2–5 分钟量级、每步自带验证)与任务边界(独立可测、单独过审查)三段,完整模板见文末 Superpowers 仓库。
  • 测试驱动:红灯(写一个失败的测试)→ 绿灯(用最少的代码让它通过)→ 重构(收拾干净)——AI 先写测试再写实现,等于把「做完」的定义前置成了可执行的标准。
  • 系统化调试:四阶段流程——根因调查 → 模式分析 → 假设验证(一次只验证一个假设)→ 实施,各阶段的展开见文末 Superpowers 仓库。配套铁律(Iron Law):没完成根因调查,不许提出任何修复方案;同一个坑修三次还失败,停下来质疑架构。

L4 全流程:把一个人干不过来的活拆给编制

子代理驱动开发把编码团队化——像管一支车队:主代理统筹派活与裁决(调度),实现代理逐任务干活(货车),审查代理把关(路检)。审查走两级:每个任务完成即审一次(对照规格与质量),整条分支收尾时再终审一次;审查既可以派审查代理,也可以走工具内置的审查命令——发起与接收都有纪律:给反馈分级(哪些必须改、哪些建议),且禁止表演性同意(审查方不能为了客气放水)。

执行层面,每个计划在独立的 Worktree(Git 工作树副本)里推进,互不踩脚。分支收尾有固定的六步:

  1. 测试全绿
  2. 检测工作环境
  3. 确认要合并的基础分支
  4. 给出三个选项(本地合并 / 推远端开 PR / 暂时保留)
  5. 执行选择
  6. 清理工作区

这一层已经不是「个人用 AI」而是「AI 团队的工程管理」。

大白话:Vibe Coding 让「想到」直通「做到」,方法论阶梯管的是这条直道有多长——原型可以一脚油门,生产代码要按里程上纪律。

技术定义:对「人 + AI 编码代理」协作方式的系统化约定,按纪律强度分层:vibe 随手生成、规格先行(spec 是人机共享的事实来源)、纪律门禁(TDD 与硬门禁前置「完成」定义)、全流程工程化(多代理协作与两级审查);选型看变更频率、生命周期与后果严重度,而非技术水平。

动手:规格先行的最小实践

先看一张全景:从一句话需求到合入主干,规格驱动会把旅程拆成四站,每站人的角色不同——

规格驱动的完整旅程:四站到主干 一句话需求 「导出工单」 起点:只有意图 站 1 · spec 要什么 / 不做什么 / 验收标准 站 2 · 计划 头部 / 任务清单 / 任务边界 站 3+4 · 执行收尾 红绿重构循环 → 六步收尾 → 主干 人:把预期显式化 人:把路径切小步 门禁:证据说了算 注意每站的产出都是下一站的输入:spec 没写好,计划就是在给模糊地基画图纸

图:四站旅程——每站的产出是下一站的输入;L3/L4 的门禁与审查就嵌在站 3、站 4 里

不用装任何框架,一个 Markdown 模板就能把 L1 升到 L2:

# spec: 工单导出为 CSV
## 要什么
管理员在后台点击「导出」,得到按状态过滤的 CSV 文件。
## 不做什么
不处理超过 5 万行的导出(提示分批)。
## 验收标准(可执行)
1. 导出文件用 Excel 打开中文不乱码
2. 状态过滤为空时返回空文件而不是报错
3. 10 万字符的特殊字符不破坏列对齐

三段各司其职:要什么让 AI 知道目标,不做什么堵住最常见的过度发挥,验收标准写成可执行断言——它既是给 AI 的完成定义,也是你事后的验收清单。写完 spec 再开对话,把 spec 全文喂进去;每次改需求先改 spec 再让 AI 对齐代码。这一个习惯,就能消掉大半的「改崩别处」。

边界与取舍:不是所有任务都值得上纪律

纪律是有成本的:L2 的 spec 要写和养,L3 的测试要先写,L4 的协作要人管。所以阶梯的用法是下限看后果,上限看变更频率和规模:

  • 一次性脚本、探索原型、demo:L1 足够,甚至更好——快就是价值,扔了不心疼。
  • 要活过一周的代码:至少 L2。spec 是你三天后读懂这段代码的唯一线索——驾照总要考一次。
  • 多人协作、生产环境:L3 起步。没有门禁的 AI 代码进主干,等于没有年检的出租车上路。
  • 规模化 AI 开发(代码产出大于人的审查带宽):L4 车队编队上场。

反过来,最常见的错误是倒挂:给一次性 demo 写了完整 spec(浪费),却让生产代码裸奔在 vibe 里(危险)。

最后回到那道自测题的直觉版:Agent 说「我做完了」,什么时候能信?——任务结束时有可执行的证据(测试通过、脚本跑通),且这个证据不是模型自己口头给的,就能信;其余时候,门禁见。

自测

合上文章先自己答,再展开对照:

硬门禁(HARD-GATE)防的是什么?没有它会怎样?

防的是「流程被顺手跳过」。硬门禁把关键节点(设计确认、测试通过)做成物理关卡——不拿到人的明确批准或可执行证据,流程过不去;它与「提示词里礼貌地请求确认」的区别是强制性:后者可以被模型(或人)图省事绕过,前者不能。没有硬门禁的后果:模糊需求直接进入实现(返工)、未验证的「完成」混进主干(假装完成)、AI 生成速度彻底甩开人的审查带宽(代码漂移)——三件事都会发生,而且发生时没有人察觉流程已经被跳过了。

什么时候该信 Agent 的「我做完了」,什么时候必须门禁验证?

判断依据是「完成」有没有可执行的证据,以及失败的代价。可信:任务收尾时附带了可复现的证据——测试通过且测试是真断言、命令真实执行且退出码为零、产物文件真实存在;且这些证据不是模型口头转述的。必须门禁验证:涉及生产环境与数据、影响他人代码、或任务定义里存在模糊地带——这类任务的「完成」声明一律不采信自述,用测试、构建、人工审查把关。一句话:证据在,自述可以信;证据不在,自述只是待验证的假设。

参考与延伸

  • 视频版:动画拆解(约 6 分钟)——本篇的交互式演示版,逐节拍推进、可点击回看,支持竖屏模式。
  • GitHub Spec Kit(官方规范驱动开发工具包,v1.0.0):立宪→规格→计划→任务→实现→收敛的完整工作流 — github.com/github/spec-kit
  • OpenSpec(Fission-AI,轻量规范工具):以变更提案组织规格,纯 Markdown、适合存量项目增量演进 — github.com/Fission-AI/OpenSpec
  • Superpowers 仓库(Jesse Vincent/obra):可安装的纪律包——头脑风暴、硬门禁、计划三段、子代理驱动开发的技能化实现 — github.com/obra/superpowers
  • 《Understanding Spec-Driven-Development》(Martin Fowler 网站,2025):SDD 的定义梳理与三个实现层级(spec-first / spec-anchored / spec-as-source) — martinfowler.com/articles/exploring-gen-ai/sdd-3-tools.html

下一站:Embedding 与向量化——代码之外的另一半世界:机器怎么理解语义。

本节点大纲与自测题(6 个子点 · 2 问)

大纲

  • Vibe Coding 工作流与角色转变
  • 规范驱动开发:OpenSpec 与规格先行
  • Superpowers 技能集解剖:brainstorming、HARD-GATE 硬门禁、计划三段结构
  • 子代理驱动开发:三角色协作、两级审查、Worktree 隔离
  • 测试驱动与系统化调试:RED-GREEN-REFACTOR、四阶段调试、完成前验证
  • 代码审查与分支收尾:反馈分级、内置 vs 手动审查、分支收尾六步

自测——答不上来就是缺口

  • 硬门禁(HARD-GATE)防的是什么?没有它会怎样?
  • 什么时候该信 Agent 的「我做完了」,什么时候必须门禁验证?