ARTICLE · INTELLIGENCE

战地情报 · 详情页

来自尧图项目组的一线实战观察与深度解析

Spec Kit 是神药还是新负担?「规范驱动开发」把写文档重新抬上神坛,中小团队跟不跟

Spec Kit 是神药还是新负担?「规范驱动开发」把写文档重新抬上神坛,中小团队跟不跟 Spec Kit 是神药还是新负担「规范驱动开发」把写文档重新抬上神坛中小团队跟不跟【免费下载链接】spec-kit Toolkit to help you get started with SDD or any other process!项目地址: https://gitcode.com/GitHub_Trending/sp/spec-kit2025 年 9 月GitHub 开源了 Spec Kit——一个把「写文档」重新抬回流程核心的工具包。它的官方定位很直白Build with a spec, fix a bug, or assess an idea — with your coding agent。在 AI 编程助手遍地、人人喊着「prompt 一把梭」的年代Spec Kit 反其道而行先把需求写成规格、把规格变成计划、把计划拆成任务最后才让 AI 动手写代码。围绕它社区里既有「让 AI 编程真正可控」的赞誉也有「是不是又多了一道流程负担」的疑虑。本文不站队而是把仓库源码、官方方法论与社区反馈摊开算一笔真实账SDD 到底解决了什么问题中小团队又该为它付出什么。SDD 在文档与代码一致性上的真实收益「权力反转」规格不再是代码的附属品Spec Kit 的方法论文档 spec-driven.md 提出了一个鲜明的论断几十年来代码才是「国王」规格只是脚手架——PRD 指导开发、设计文档辅助实现但代码永远是唯一真相源规格几乎追不上代码的演进。SDD 要做的是一场「权力反转」规格不再服务代码而是代码服务规格。PRD 不是实现的参考而是生成实现的源头技术计划不是编码的说明而是产生产物的精确定义。当规格与实现之间不再有「差距」只有「转换」文档与代码的一致性问题就从「尽力逼近」变成了「天然同源」。这个转变之所以在 2025 年才成为可能恰恰是因为 AI 有能力把足够精确、完整的自然语言规格翻译成可工作的系统。原文说得直白没有结构的裸 AI 生成是混沌SDD 提供的就是结构。模板不是文档格式是约束 LLM 的「护栏」很多读者第一次打开 Spec Kit 的模板会失望spec.md不就是个 Markdown 表单吗但源码里的设计意图恰恰相反。打开 templates/spec-template.md 可以看到模板明确要求Focus on WHAT users need and WHYAvoid HOW to implement不得出现技术栈、API、代码结构并强制用[NEEDS CLARIFICATION: ...]标注一切不确定项——比如「登录方式未指定——邮箱/密码、SSO 还是 OAuth」——且单次最多三个标记按影响面排序。这不是文档洁癖而是对 LLM 输出行为的工程化约束。templates/commands/specify.md 中写道模板充当「规范的单测」通过清单检查需求是否可测试、是否还有未澄清标记、成功标准是否可量化。当一个 LLM 天然倾向于「用 React Redux 实现」模板把它按回「用户需要实时看到数据变化」——规格保持技术无关的稳定性实现层怎么换都不影响意图。这正是文档与代码一致性问题的第一层解药在源头上堵住歧义而不是在事后靠人肉同步。一致性闭环spec → plan → tasks → implement → convergeSpec Kit 的 SDD 主流程是constitution → specify → plan → tasks → implement → converge。其中 workflows/speckit/workflow.yml 把这一串编排成可暂停、可恢复的流水线specify 生成规格后插入人工审核门gateplan 生成计划后再审一次最后才进入 implement。状态持久化在.specify/workflows/runs/run_id/中断后可specify workflow resume续跑。一致性维护并不是「生成一次就完事」。仓库提供了三种规格演化模型docs/guides/evolving-specs.mdFlow-Forward每个 feature 目录留作历史快照、Living Spec改 spec.md 后重派生 plan/tasks、Flow-Back实现中发现的新认知允许回写规格。配合converge检查实现是否覆盖规格、analyze扫描三份文档间的缺口构成双向反馈需求变了计划与任务跟着重生成实现暴露了问题规格被回写修正。方法论文档 spec-driven.md 称之为「双向反馈」——生产指标、线上事故不只是一次热修复而是更新规格供下一次再生成使用。狗粮化的证据Spec Kit 自己就是这么干的最有力的证据是项目自己的开发流程。docs/guides/agentic-sdlc.md 记录了 Spec Kit 如何把 agentic 工作流嵌入自身 SDLCfeature 请求先走assess扩展的 intake→research→define→shape→decide 五阶段产出go / needs-clarification / kill结论specify bundle这个功能bundler 子系统正是通过 SDD 流程产出 constitution、spec、plan、tasks 后实现的一次 converge 还补上了遗漏的任务。与此同时测试、lint、发布仍由常规 GitHub Actions 完成agent 只负责需要「解读」的部分。这传递了一个克制的信号SDD 不是取代全部流程而是插在需要意图保真的环节——规格管「要什么」CI 管「怎么验证」。中小团队的时间成本账一次性投入装一个 CLI写一份宪法上车门槛并不高。安装只需uv tool install specify-cli初始化一行命令specify init my-project --integration copilot然后把copilot换成 40 集成中任意一个——仓库 src/specify_cli/integrations/ 下躺着 Claude、Gemini、Cursor、Codex、Copilot 等 41 个适配器。项目初始化时生成一份constitution.md宪法代码质量、测试、可维护性原则全项目只写一次。之后每个功能走一遍 specify → plan → tasks这才是每次的边际成本。每功能成本文档时间从「小时」到「分钟」spec-driven.md 里有一组对照数字常被社区引用传统方式为聊天功能写 PRD 设计文档 技术规格 测试计划总计约12 小时文档工作用specify系列命令specify 5 分钟、plan 5 分钟、tasks 5 分钟15 分钟得到完整规格、技术选型及理由、API 契约、数据模型、测试场景且全部落进 feature 分支纳入版本管理。这组数字是方法论作者的测算但方向与社区多篇实战文章的体感一致AI 把「写文档」从纯人力开销变成了「审文档」——人不再从零起草而是对生成结果做判断。被低估的隐性成本但账不能只算一半。时间成本的另一头是审核门是真实的人工时间。workflow 里的gate步骤会暂停流水线等人 approve规格、计划各审一次。如果团队本来就没人看文档这两道门不是增值而是纯开销。LLM 上下文与费用。每个命令都是一次较长的 agent 会话constitution、历史规格都要读进上下文token 成本与延迟随仓库增大而上升。收敛循环可能拉长。implement → converge要循环到报告显示Converged规格模糊时这个循环会反复把成本从文档端转移到迭代端。仓库其实给了「减负」选项内置的 presets/lean/preset.yml 把流程砍到「只要 prompt、只要产物」的最简形态——只有 specify/plan/tasks/implement 四个命令去掉额外门禁。想要更轻甚至可以完全跳过 SDDbug 修复走独立的bug扩展assess → fix → test 三段分离想法评估走assess扩展二者都不要求先跑 SDD 功能流程见 bundles/assess/bundle.yml。也就是说Spec Kit 允许团队按需取用而不是全有或全无。生态成本catalog 是一把需要自己掌舵的钥匙另一个常被忽视的成本是生态治理。Spec Kit 用 catalog 分发扩展、预设、工作流和 bundle社区目录 extensions/catalog.community.json 不断增长官方目录则默认留空、由组织自己填充可信项。README 反复强调社区扩展只是格式校验官方不审计、不背书、不提供支持安装前必须自己 review 源码。对中小团队这意味着「插件生态繁荣」的另一面是「供应链自查」的责任。好在有--from直接装 URL、有优先级可堆叠的 preset 机制治理手段是齐备的只是需要有人愿意花这份心。什么人适合现在上车、什么人应该观望适合上车三类信号很明确第一以「可追溯性」为刚需的团队。合规、审计、企业约束场景下「为什么这么设计」「这个需求来自哪条验收标准」必须能查证。Spec Kit 的每份 plan 都要求技术决策带理由、每条需求都可测试、每个任务可回溯到契约与场景这种天然的 traceability 是手写文档时代求之不得的。第二多 agent / 多人协作且饱受「AI 各写各的」之苦的团队。41 个集成意味着不同成员可能用不同助手统一规格工件就是唯一的事实基准——代码可以由任何 agent 生成但意图由规格锁定。规格在分支里创建、评审、合并本身就是一种团队级的知识管理。第三已有文档纪律、只差把文档「激活」的团队。如果团队本来就有写 PRD、评审设计的习惯Spec Kit 把这份纪律从「维护负担」变成「生成源头」边际收益最高几乎纯赚。建议观望三类情况不必硬上一次性脚本与纯探索型个人项目vibe coding 的快与 SDD 的结构天然冲突为一个用完即弃的功能维护 spec/plan/tasks 三件套属于为流程而流程。方法论文档自己都承认支持「start-over」和快速探索是 SDD 的价值场景之一但这不是说你必须用它。没有 AI 预算或 agent 不可用的环境SDD 的整个效率前提是「AI 能可靠地把规格翻译成实现」。没有这一层spec-driven.md 里 12 小时对 15 分钟的时间账不成立你只是多了一套更重的文档流程。团队无评审习惯、交付靠赶工审核门会被点成「通过」的摆设规格会沦为「写给自己看的备忘录」而收敛循环会变成拖慢进度的鞭子。这类团队先补的是流程纪律不是工具。渐进路径不用一步跨进 SDD观望者也不必全盘否定。仓库提供了明显更平滑的切入方式先只装bug或assess扩展处理单一场景一段诊断、一份证据、一个 go/kill 结论产物落在.specify/bugs/slug/或.specify/assessments/slug/感受「结构化产物」带来的确定性再用leanpreset 只保留四个核心命令最后才考虑上完整的 workflow 与审核门。从修复一个 bug 开始而不是从重构整个研发流程开始是这套工具对中小团队最友好的使用姿势。结论药效取决于用药方式回到标题的质问Spec Kit 是神药还是新负担源码给出的答案是剂量相关。它真正的疗效——文档与代码的一致性——建立在「规格可执行」这一前提上由模板护栏、收敛闭环、双向反馈三层机制兑现且项目用自己的开发流程验证了这套机制在真实仓库里的可行性。它的副作用同样真实审核门、token 成本、生态自查都需要团队有相应的人力与纪律去消化。中小团队最该做的不是跟风上车也不是一棍子打死而是问自己一个问题我们缺的是「意图丢失」还是「执行速度」前者Spec Kit 可能是这些年最对症的一味药后者它大概率只是又一张需要维护的表单。而工具链最厚道的地方在于——你可以先只吃最小剂量再决定要不要长期服用。【免费下载链接】spec-kit Toolkit to help you get started with SDD or any other process!项目地址: https://gitcode.com/GitHub_Trending/sp/spec-kit创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
RELATED READING

延伸阅读

更多一线实战笔记与深度复盘,助您持续精进