EXPERT FIELD REPORT · 2026

AI 原生软件开发生命周期实战总结:
当规约成为新的代码,流程成为制品的流水线

基于 Anthropic《The AI-Native SDLC Playbook》、三大开源规约框架(OpenSpec / spec-kit / mattpocock skills)的源码研读, 以及同一个真实需求(适老化 macOS 计算器)在三条方法论路径上的完整实现对比,给出一份不抄概念、只讲实战的专家级总结。

参考:Anthropic AI-Native SDLC Playbook(2026-08) 框架:OpenSpec · GitHub spec-kit · mattpocock/skills 实战:同一需求 × 三条路径的 SwiftUI 完整实现
01 · THESIS

核心判断:瓶颈迁移了,而大多数流程还停留在旧瓶颈上

传统 SDLC 的全部设计前提——PRD、估算仪式、串行评审、阶段性签核——都建立在"写代码最贵、最慢"这一事实上。 当智能体把实现阶段压缩到小时级,这个前提失效了,三件事同时成真:

1

瓶颈向左右两侧迁移

计划、评审/测试、发布仍以人速运行。构建越快,队列在这些环节堆得越高——安全评审团队是按人类产出配置的,智能体放大产出后,要么评审排队,要么代码欠审上线。

2

旧控制与现实脱节

逐行人工评审在"人写每一行"的时代是合理的;当智能体写出大部分 diff,它既不可行也无意义。控制必须改由机器执行,人退到门禁上。

3

治理成本不降反升

例外事项仍要排进周会/月会的委员会。产出越快,等待治理裁决的积压越贵——治理本身成了最需要自动化的环节。

"代码不再是瓶颈——瓶颈是它周围以人速运行的环节。AI 原生 SDLC 不是删掉控制,而是保留旧的控制目标、换上新的执行机制。" —— Anthropic, The AI-Native SDLC Playbook

贯穿全局的主线:制品链(The Committed Artifact Chain)

AI 原生 SDLC 的流程不再是"文档 + 工单 + 签核"的人际接力,而是一条制品链:每个阶段以向版本库提交一个制品结束,下个阶段以读取这个制品开始。 前半程的制品是 Markdown(产品负责人和智能体都能读、都能改的同一文件),从构建起制品变成代码及其记录。整条 git 提交链就是审计链:谁提的需求、智能体产出了什么、谁批准的。

intent.md→ spec.md→ plan.md→ diff + tests→ PR + 评审记录→ 发布门→ 事故 / 监控告警→ 新的 intent.md

这一设计的深刻之处在于:它把"流程"变成了"数据"。阶段交接不再是会议和工单,而是文件系统的状态转移——可以被钩子(hook)触发、被 CI 编排、被度量直接读取(两个 git 时间戳之差就是阶段耗时)。 人的注意力从"启动每个阶段"收敛到"守护制品被接受的门禁"。这就是"流程即代码"在 SDLC 层面的真正含义。

02 · THREE SCHOOLS

同一个问题,三种哲学:规约框架的流派分野

OpenSpec、spec-kit、mattpocock/skills 都在回答同一个问题——"怎么让智能体持续做对的事"——但给出了三种截然不同的答案。 看懂它们的分歧,比学会其中任何一个都重要;Anthropic 的 playbook 则站在企业治理的高度,把三者共通的底层逻辑讲透了。

维度 OpenSpec规约即活文档 spec-kit规约即可执行 mattpocock/skills纪律即技能 Anthropic Playbook治理即配置
核心哲学 fluid not rigid、iterative not waterfall、为棕地而生。规格是与代码共同演进的活文档 "翻转剧本":几十年来代码为王、规格是用完即弃的脚手架;SDD 让规格直接生成实现 反对 GSD/BMAD/spec-kit 式"流程占有"——流程一旦拥有你,流程里的 bug 就难修。技能要小、可改、可组合 控制目标不变、执行机制重写。企业级的门禁、审计与合规如何在智能体速度下成立
制品模型 specs/(当前真相)+ changes/(增量提案:proposal/design/tasks/delta-specs),archive 后合并回 specs 每特性一个目录:spec → plan → tasks,外加 research / data-model / contracts / quickstart / checklists,constitution 作为全局章程 轻量文本:CONTEXT.md 术语表、docs/adr/ 决策记录、issue 跟踪器上的 spec/tickets 制品链:intent.md → spec.md → plan.md → diff → PR → 事故记录,每环都可审计
工作流形态 /opsx:propose → /opsx:apply → /opsx:archive;delta 语义(ADDED/MODIFIED Requirements + WHEN/THEN 场景) constitution → specify → plan → tasks → implement → converge 六步仪式;另有 bug(assess→fix→test)、assess(想法评估)扩展 无固定流水线。用户触发型技能(grill-me / to-spec / implement / triage)编排模型触发型纪律(tdd / code-review / domain-modeling) 六阶段非线性 plays,带依赖图与采纳顺序;终点是闭环——生产异常自动写回 intent.md
质量保障 规约评审先于实现;verify-change 核对实现与规约的偏差 章程门禁(Constitution Check)、需求 checklist、converge 循环直至收敛 TDD 红绿重构、双轴 code-review(标准轴 + 规约轴,并行子代理互不污染)、diagnosing-bugs 分阶段诊断环 skill(建议性控制)+ hook(确定性控制)双层;CI 中跑 evals 回归测试智能体配置本身
适用场景 持续演进的存量项目;特性横跨多仓库(stores 共享规约) 从零启动的大特性、组织级标准化、需要完整交接产物链的团队 资深工程师的日常驱动;重视对齐、反馈环与代码设计的长期项目 受监管组织、平台团队、需要向审计与合规交代的规模化落地
根本分歧点 规约驱动派相信"把规格写对,代码自然对"——分歧只在规格的生命周期(OpenSpec 认为是持续演进的差量,spec-kit 认为是完整的前置仪式) 工程纪律派与治理派则相信"规格写不全所有事"——真正决定质量的是对齐访谈、反馈环速率、代码设计品味,以及控制是否由机器确定性执行

专家视角:三派其实并不矛盾,它们在不同的失效模式下各管一段

实战中最常见的错误是错配阶段:在需求还是一团雾时上 spec-kit 的重仪式(产出一堆精致的错误规格), 或在项目已进入持续演进期后还在为每个小改动跑完整流水线(流程成本超过收益)。 成熟的做法是按阶段切换工具,而三者共享的底层资产——术语表、ADR、测试套件、CLAUDE.md——可以一路沉淀下去。

03 · SIX STAGES

六阶段实战:每个阶段真正改变了什么

STAGE 1

Plan 计划:意图只捕获一次,用提出者自己的语言

传统想法经过 backlog、用户故事、故事点、澄清会,每过一次手就离提出者的本意远一步。
AI 原生提出者与智能体头脑风暴,直接产出 intent.md 原型规约——人可读、可版本化、下一阶段立即可消费。从数周的引出-澄清周期压缩到小时级。

要点不在"写得快",而在零转译损耗:intent.md 保留了提出者的原话、约束和悬而未决的问题(Open Questions 是必备章节), 产品负责人审的是智能体是否误解了意图,而不是替智能体重写。非工程师无需碰 git——连接器让智能体代为提交。

实战印证 · OpenSpec 路径
计算器项目的 proposal.md 用 Why / What Changes / Capabilities / Non-goals 四段结构,其中 Non-goals(明确不做人民币大写、历史记录、设置页)事后证明价值最高——它封死了智能体在实现阶段"顺手多做"的空间。写给智能体的规约里,负面约束的边际收益远高于正面描述。
STAGE 2

Design 设计:需求与设计坍缩成一次会话,策略在写作时生效

传统分析师把想法形式化为需求,设计师再把需求解析回设计。分离为问责而存在,但缓慢且有损。
AI 原生单次会话内从 intent.md 产出需求+设计规约;品牌、安全、合规、UX 策略以 skills 形式作为约束实时施加,冲突点在写作时被标记(flagged concerns),而不是数周后在评审会上被发现。

这一阶段最被低估的变化是设计的事实源上移:传统流程的事实源是 Figma 画板,AI 原生流程中它变成仓库里的文本规范——因为文本是 AI 的原生格式:可读、可 diff、可 lint、可版本化。Figma 退为协作与存档层,HTML 高保真原型成为设计稿的形态(真实排版引擎渲染、秒级迭代)。

实战印证 · matt-skills 路径的设计流水线
项目采用 Google DESIGN.md 规范(YAML front matter 存 design tokens、正文存设计理念——tokens 给 AI 精确的值,prose 告诉它为什么),并配 designmd lint 做质量门:断引用报错、对比度低于 WCAG AA 4.5:1 告警——规范工具本身就是无障碍守门员。写作心法的核心:一个具体引用胜过一串形容词("央企门户、机关报式排版"远比"简洁现代大气"信息量高);负面约束是免费的("不要渐变、不要大圆角"直接封死风格漂移)。
STAGE 3

Build 构建:先有计划制品,后有代码;护栏是代码不是习惯

传统工程师读完设计开始写代码,"怎么改"留在脑子里;评审者第一眼看到的是成品 diff,返工成本极高。
AI 原生以 plan mode 起步:智能体只读代码库、产出实现计划(改哪些文件、顺序、用什么测试证明),工程师在改一个文档的成本下纠偏,批准后提交为 plan.md,后续评审拿它对照 diff。计划够扎实,实现往往一次通过。

构建阶段的四块基石,实战中缺一不可:

  • CLAUDE.md / AGENTS.md 是"新员工入职包":构建/测试/lint 命令、真正重要的约定、"智能体反复犯的错"。工作规则:同一个错误犯两次,纠正就进 CLAUDE.md;保持一页以内,因为它每会话被全量读入。
  • Skills 是制度知识的可操作化:判断标准——必须被一致执行的制度知识写成 skill;属于项目常识的放 CLAUDE.md;一次性的留在 prompt 里。
  • Hooks 是 skill 背后的确定性层:skill 是建议性控制(让违规稀少),hook 是确定性控制(让违规近乎不可能)。构建期 hook 要快、按文件作用域;重型检查留给提交和 PR。
  • 并行会话 + 子代理:一个工程师驱动多个 worktree 会话,天花板不是算力而是"一个人能认真评审多少路输出"。重复性工作固化成子代理(verifier、code-simplifier、researcher),定义入库共享。
实战印证 · spec-kit 路径
plan.md 中一句话决定了整个代码结构:"计算引擎作为无 UI 依赖的纯 Swift 状态机模块,TDD 先行,UI 层保持极薄"。这正是 mattpocock 所谓深模块(deep module)——大量行为藏在极小接口之后、处于干净接缝上、可脱离 UI 完整测试。在计划阶段指定模块边界,是约束智能体不产生泥球架构的最有效手段——因为智能体默认倾向于"哪里顺手写哪里"。
STAGE 4

Test 测试:每个会话自查,智能体配置本身也要回归测试

传统"代码能工作"的信号来得很晚:CI 几分钟后、测试人员几天后、生产几周后。信号越晚,人就必须检查智能体的全部产出——人成为瓶颈。
AI 原生会话被赋予自查手段(跑测试、跑构建、截图比对),迭代到检查通过才上报;工程师看到的产出已经过了第一道关。
  • 反馈环要可量化:"test_status.py 全部通过"、"截图与 mock 一致"、"端点返回 200 且含新字段"——能被智能体不问人就验证的目标才算目标。
  • 修 bug 先写失败测试并提交,再让智能体在不许改测试的前提下修绿——一份先于修复存在、且智能体无法改写的测试,才是 bug 已修复的证据。配 hook 禁止修复任务中编辑测试文件。
  • 保护反馈环本身:修代码的智能体不能削弱对代码的检查——这是 AI 原生测试阶段最新、也最容易漏的一条控制。
  • Evals 是阶段门禁 QA 的 AI 原生等价物:收集 20–50 个真实任务及其可接受标准,在 CLAUDE.md / skills / hooks 任何变更时非交互式重跑。换模型、改 prompt 之后智能体是否仍达标,由 eval 套件说话。每个生产事故转化为一个永久 eval。
实战印证 · matt-skills 路径
/tdd 技能把红-绿-重构固化为纪律,配合"一次一个垂直切片"的步长控制;/diagnosing-bugs 把调试包成分阶段门禁的循环(构造复现环 → 最小化 → 假设 → 插桩 → 修复 → 回归测试)。经验是:反馈环的速率就是你的速度上限——智能体没有反馈时不是写得慢,而是在错误方向上写得飞快。
STAGE 5

Deploy 发布:双向评审,治理在智能体行动时执行

传统评审容量按人类产出规划;PR 等待评审者逐行读完,质量随评审者负载波动,作者在积压中追赶。
AI 原生所有 PR 接受同一套评审通道、按严重度排序输出;人的注意力上移一层——判断"改动是否符合计划意图、风险是否可接受"。@claude 标记即修复,修复循环可由智能体自己跑到全绿,只等 code owner 批准。
  • 评审策略写成 REVIEW.md:分通道(bug / 安全 / 对 spec.md 与 plan.md 的符合性)、定义 Important 与 Nit、封顶 Nit 数量、排除生成文件——否则智能体评审会淹没在噪音里。
  • 职责分离天然保留:写代码的智能体无权批准自己的代码;批准永远来自分支保护后的人类。评审发现第二次出现时,纠正进 CLAUDE.md——因为评审也读它,错误从下一个 PR 起被拦截。
  • Hooks 即审批门:把"变更管理签核、发布授权、受保护路径"逐条表达为 allow / ask / block 的钩子,入 .claude/settings.json 或平台托管配置;block 必须自解释(原因 + 申诉路径)。生产部署的批准永远留给具名的人。
  • CI/CD 中的智能体:从只读判断步骤起步(分拣失败构建、总结 flaky 测试、起草 changelog),再到门禁后的写步骤;按环境分级自治——开发环境自由部署,生产环境智能体备妥发布、发布经理授权。回滚路径必须是流水线中演练最多的那条路。
实战印证
三个项目共同验证了一条:评审发现的归宿是配置文件,不是人的记忆。凡是在评审中第二次出现的问题,当场写进 CLAUDE.md / CONTEXT.md / 章程,之后同类问题在前端被拦截——评审者得以专注在只有人能判断的意图与风险上。
STAGE 6

Maintain 维护:闭环——触发路径上没有人,发现重新流入 intent.md

传统维护是被动响应:凌晨的告警可能被错过,工单在 backlog 里等人认领,复盘行动项在下一场火之前到不了代码库。
AI 原生确定性脚本盯住生产指标的控制带:1σ 只记录,2σ 智能体只读诊断,3σ 可以行动——但行动路径只有开 PR 进评审门、或触发预批准的 runbook。诊断写成 intent.md 格式的制品,从第一阶段重新流入流水线。
  • 检测保持确定性:均值/标准差 + Western Electric 规则抓漂移与尖峰,无模型参与;模型只在带被突破后被调用,层级(tier)决定它能做什么。
  • 阶段间设独立置信门:确定性检查或对抗性评审智能体决定上一阶段的产出是继续流转还是升级给人。
  • 定期代码库扫描取代"扫描事件":安全扫描是对"某时刻代码库 × 某代模型"的陈述,两半都会过时——代码每周在变,每代模型能发现上一代漏掉的漏洞。按周期跑、发现走评审门、每次修复为漏洞类别补 eval。
  • 闭环的度量:领先指标——从控制带突破到 intent.md 进入分诊队列的时间;滞后指标——发现转化为合并修复的比例、同类事故复发率(应随 eval 积累下降)。
04 · META-PRINCIPLES

八条元原则:穿越所有框架与阶段的底层规律

这些原则在三套框架和 playbook 中反复出现、又被实战反复验证——它们比任何具体工具都长寿。

1

对齐先于生成

软件开发最常见的失败模式是错位(misalignment),AI 时代亦然。mattpocock 的 grill 式访谈把"让智能体追问你"固化为技能:在生成任何东西之前,把设计树的每个分支问到收敛。提示词质量的上限不是措辞技巧,而是你想清楚的程度——访谈是强迫你想清楚的机制。

2

共享语言是最高杠杆的上下文工程

CONTEXT.md 式术语表把项目黑话压缩成智能体可解码的共享语言:变量/函数/文件命名因此一致,代码库对智能体更可导航,思考消耗的 token 更少。实战中"播报词决策""数值规范文本""链式立即执行"这类命名一旦确立,后续每个会话都在吃它的红利。

3

反馈环的速率 = 开发速度的上限

没有反馈的智能体不是慢,而是在错误方向上飞快。静态类型、一条命令的测试、浏览器/截图回环,缺一不可。并且必须保护反馈环本身:修复代码的智能体不得削弱检查代码的测试。

4

双层控制:skill 建议,hook 决定

skill 让违规变得稀少,hook 让违规近乎不可能;必须无条件成立的策略,背后一定要有确定性机制。人的批准只放在门禁上——把批准提示塞进构建环路,等于把人重新钉回所有并行会话的关键路径。

5

AI 加速代码,也加速熵

智能体以空前速率生产复杂度。对策是 Kent Beck 的老话:"每天投资于系统设计"——深模块(小接口、厚实现、干净接缝、可经接口测试)要成为日常纪律,定期扫描代码库的"深化机会",而不是等泥球成形后抢救。

6

文本制品 > 会话

会话是易失的,仓库里的 Markdown 才是团队记忆。每个阶段以提交制品结束、以读取制品开始;交接(handoff)的本质是把上下文压成下一个智能体能独立接手的文档。"一个没见过对话的人能否仅凭计划实施"是制品质量的试金石。

7

负面约束与退出条件的杠杆最高

Non-goals、"不要渐变"、禁改清单、封顶 Nit 数量——对智能体而言,封死错误方向比描述正确方向更有效、更省 token。正面描述留下无穷多种"对的"实现,负面约束直接消除整片错误空间。

8

度量内建于制品元数据

不需要新的度量系统:两个 git 时间戳之差是阶段耗时,PR 元数据给一次通过率与返工轮次,hook 决策日志给门禁等待时间,eval 通过率给配置质量。每个 play 都明确领先/滞后指标——不能从 git 和 CI 里读出来的度量,在 AI 原生流程里不存在。

"The loop keeps running. Human judgement stays above it." —— 闭环持续运转,人的判断悬于其上。 —— Anthropic Playbook 结语。人的角色从"写代码的人"变为"定义意图、评审制品、守护门禁的人"
05 · FIELD NOTES

实战对照:同一个适老化计算器,三条路径各教会了我们什么

用同一个真实需求(面向老年用户的 macOS 原生计算器:大字体大按钮、四位分节/千分位、中文读数与语音播报、防误触、实体计算器语义) 分别走 OpenSpec、spec-kit、mattpocock skills 三条路径完整实现。这是极少有人做过的对照实验,结论如下。

三条路径的差异化产出

OpenSpec 路径spec-kit 路径matt-skills 路径
最有价值的产物 proposal.md 的 Why/Non-goals;delta spec 的 WHEN/THEN 场景清单——天然就是验收用例 constitution(适老化硬性指标:字号 ≥24pt、触控目标 ≥44×44pt、对比度 ≥4.5:1)作为 Phase 0 前置门禁;用户故事的 Independent Test 让 MVP 边界无争议 CONTEXT.md 术语表 + docs/adr/(语音数值策略、播报脚本分层);访谈中涌现的"播报词决策""数值规范文本"等概念成为全代码库的命名基准
流程体感 最轻。propose → apply → archive 三步,规约随代码生长,几乎没有仪式负担 最重也最全。spec → plan → tasks → research → data-model → contracts → quickstart → checklists,产物链完整到可直接移交陌生团队 对话密度最高。大量时间花在 grill 访谈与术语打磨上,生成阶段的返工反而最少
暴露的短板 对"还没想清楚"的需求帮不上忙——它假设你已有可提案的变更 仪式成本固定,小改动不划算;产物多了之后维护规约与代码的一致性成为新工作 高度依赖工程师本人的判断力;技能是纪律而非门禁,没有确定性强制,团队规模化时需要自己补 hook 层
最适用的阶段 项目进入持续演进后的每个增量特性 从零启动的大特性、需要正式交接与审计的场景 需求模糊期的对齐、以及全周期的工程质量保障

对照实验的三条硬结论

①

前期对话深度决定后期返工量

matt-skills 路径前期花了最多时间在访谈和术语上,但实现阶段几乎零返工;反过来,任何路径里凡是"先写了再说"的部分,都在测试阶段以更高代价还了回来。智能体时代,想清楚的速度才是真正的开发速度。

②

量化约束是规约的质量分水岭

"大字体"在各路径里都产生过平庸结果;"结果区字号 ≥24pt、点击目标 ≥44×44pt、对比度 ≥4.5:1"则一次到位。能被机器或人客观核对的约束才是约束,形容词不是。

③

规约的价值在第二次变更时才兑现

第一次实现时,三条路径的代码质量差距不大;差距出现在后续修改——有活规约(OpenSpec specs/)和决策记录(ADR)的项目,变更成本显著更低。规约不是实现的输入,而是演进的资产。

综合建议
不必皈依任何一派。推荐的组合姿势:用 grill 式访谈对齐意图 → 用 spec-kit 式完整仪式落地首个大特性(章程 + 故事 + 计划 + 契约)→ 用 OpenSpec delta 规约承接后续演进 → 全程用 mattpocock 的工程纪律(TDD、深模块、双轴评审)兜底质量 → 规模化时按 Anthropic playbook 补 hook 门禁与 CI evals。五条线索共享同一套沉淀物:CLAUDE.md、CONTEXT.md、ADR、测试套件与 git 历史。
06 · ADOPTION ROADMAP

落地路线:按组织规模选择切入点

规模起步动作(本周可做)三个月后成熟形态
个人 / 小团队 写 CLAUDE.md(命令 + 约定 + 常犯错误,一页内);建立 CONTEXT.md 术语表;重要改动先 grill 后动手;接入 TDD 反馈环 把反复出现的纠正沉淀为 skills;ADR 记录关键决策;实现与测试配对提交 OpenSpec delta 规约管理演进;hook 保护测试文件与受保护路径
成长型团队 约定 intent/spec/plan 制品模板与存放位置;PR 引入智能体评审(REVIEW.md 定通道与 Nit 上限) 评审发现回流 CLAUDE.md;CI 中对 CLAUDE.md/skills 变更跑 eval 套件;分支保护 + code owner 批准 制品链自动化触发:intent 合并即生成 spec PR;并行会话 + 子代理成为常态
受监管企业 平台团队托管不可覆盖的 settings(deny 清单、沙箱、凭据隔离);列出必须保留的人类审批门并表达为 hook 每环境分级自治(开发自由 / 生产具名授权);部署经 MCP 暴露为白名单工具;回滚路径定期演练 闭环维护:确定性控制带监控 → 智能体诊断 → intent.md 回流;定期安全扫描 + 事故转 eval;OpenTelemetry 全程审计

三条最常见的失败路径(务必避开)

一句话总结:AI 原生 SDLC 的本质,是把软件工程从"人写代码、流程管住人"重构为"智能体写代码、制品承载意图、机器执行控制、人守护判断"。先建反馈环与制品链,再谈自动化;先对齐与约束,再谈生成。