Spec-kit安装
https://zhuanlan.zhihu.com/p/1959040296479339345
https://www.cnblogs.com/treasury-manager/p/19130337
spec-kit是什么?
Spec-Kit 是一套微软发布的“规格驱动开发(Spec-Driven Development, SDD)”工具包,方法论 + 脚手架 + CLI + 模板:把“规格→计划→任务→实现”的流程标准化,并把这些步骤做成可执行的斜杠命令,让 Claude Code / Copilot / Gemini CLI 等代理有章可循,而不是即兴“凭感觉写代码”。核心组件是 Specify CLI(命令:specify),用于初始化模板、生成命令、校验环境等。目标是把“先写清楚规格/意图,再规划,再拆任务,最后由 AI 代理实现”的流程产品化,替代一把梭的大Prompt“vibe coding”。
Spec-Kit有什么用呢:
- 让“写什么/为什么”(Spec)先于“怎么做”(Plan/Tasks/Impl),减少返工;
- 给代理提供统一的“宪法”和护栏(安全、质量、SLO、禁行区等);
- 产出一套可追溯的工件与目录结构(如 .specify/、任务清单、计划文档等)。
核心原则
- 通用语言的规格:规格成为主要工件。代码成为其在特定语言和框架中的表达。维护软件意味着不断发展的规范。
- 可执行规范:规范必须足够精确、完整且明确,以生成工作系统。这消除了意图和实现之间的差距。
- 持续细化:一致性验证是持续进行的,而不是一次性的。人工智能将规范的歧义、矛盾和差距分析为一个持续的过程。
- 研究驱动的背景:研究代理在整个规范过程中收集关键背景,调查技术选项、性能影响和组织限制。
- 双向反馈:生产现实为规范演变提供信息。指标、事件和作学习成为规范细化的输入。
- 分支探索:从同一规范生成多种实现方法,以探索不同的优化目标——性能、可维护性、用户体验、成本。
运行 Spec Kit 后,您的 AI 编码代理将可以访问以下 Spec Kit 结构化开发命令:specify init
| 命令 | 描述 | 用法 |
|---|---|---|
/constitution |
创建项目管理原则和开发指南 | 先建立项目标准(或称宪法) |
/specify |
定义要构建的内容(具体要求和用户情景) | 关注什么和为什么,而不是技术堆栈 |
/clarify |
通过结构化提问澄清未指定区域 | 除非显式跳过,否则必须在/plan之前运行 |
/plan |
使用所选技术堆栈创建技术实施计划 | 指定体系结构、框架和技术决策 |
/tasks |
生成可操作的任务列表以供实施 | 将计划分解为可执行的步骤 |
/analyze |
跨工件一致性和覆盖率分析 | 在/tasks运行之后,在/implement之前 |
/implement |
执行所有任务,按计划构建功能 | 根据规范生成工作代码 |
Spec-kit安装
以 Wrap + PowerShell 为例。
安装uv
1 | # 安装uv,需要科学上网 |
安装specify cli
1 | uv tool install specify-cli --from git+https://github.com/github/spec-kit.git |
初始化一个带 Spec-Kit 的项目骨架
在你打算放项目的目录里运行:
1 | specify init my-feature --ai claude --script ps |
my-feature是feature名字。如果你是新开发,直接在根目录下。直接用
1 | specify init --here --force --ai claude --script ps |
注意,spec-kit是基于git管理项目的,在运行以上命令之前,需要先git push。
初始化后,会生成 .specify/、templates/、specs/、scripts/ 等目录与模版,且模板会自动注入一组 /speckit.* 的斜杠命令供代理使用。可用 specify check 自检依赖。
在 Claude Code 里跑完整的 Spec-Driven 工作流
进入项目并启动 Claude Code:
1 | cd my-feature |
建立项目原则(生成/更新 .specify/memory/constitution.md)
1 | /speckit.constitution |
撰写功能规格(不要先纠结技术栈,专注要做什么 & 为什么)
1 | /speckit.specify |
结构化澄清需求
1 | /speckit.clarify |
产出技术实现方案(这一步再指定技术栈、架构)
1 | /speckit.plan |
从实现方案拆解成任务列表
1 | /speckit.tasks |
检查一致性
对当前特性的所有工件做一次一致性/覆盖率体检——检查 constitution.md、spec.md、plan.md、tasks.md 之间是否互相矛盾、是否遗漏关键验收项/边界条件,是否存在范围蔓延、不可实现或未落地到任务的条目等。
1 | /speckit.analyze |
最后,开始一键执行实现(会按依赖顺序执行任务、调用本地 CLI、TDD 流程等)
1 | /speckit.implement |
工作流:规范→规划→任务
SDD 方法通过三个强大的命令显着增强,这些命令可自动执行规范→规划→任务工作流:
命令/speckit.specify
此命令将简单的功能描述(用户提示)转换为具有自动存储库管理的完整结构化规范:
自动特征编号:扫描现有规格以确定下一个特征编号(例如,001、002、003)
分支创建:根据您的描述生成语义分支名称并自动创建它
基于模板的生成:根据您的要求复制和自定义功能规范模板
目录结构:为所有相关文档创建正确的结构specs/[branch-name]/
命令/speckit.plan
一旦存在功能规范,此命令将创建一个全面的实施计划:
规范分析:阅读并理解功能要求、用户故事和验收标准
宪法合规性:确保符合项目宪法和建筑原则
技术翻译:将业务需求转换为技术架构和实现细节
详细文档:生成数据模型、API 合约和测试场景的支持文档
快速入门验证:生成捕获关键验证方案的快速入门指南
命令/speckit.tasks
创建计划后,此命令将分析计划和相关设计文档以生成可执行任务列表:
输入:读取(必需)和(如果存在)、、 和plan.mddata-model.mdcontracts/research.md
任务派生:将合约、实体和场景转换为特定任务
并行化:标记独立任务并概述安全并行组[P]
输出:写入功能目录,可供任务代理执行tasks.md
总结:核心用途集中在三方面:
项目初始化:快速生成带规范目录(如 .specify/ 、 specs/ 、 scripts/ )和模板的项目骨架,无需手动搭建基础结构。
流程标准化:Specify(规格化) → Plan(规划) → Tasks(任务分解) → Implement(实现)
提供 /speckit.constitution (定项目原则)、 /speckit.specify (写功能规格)、 /speckit.plan (出技术方案)等一系列斜杠命令,覆盖从需求澄清到任务拆解的全流程。
一致性保障:通过 /speckit.analyze 等命令检查需求文档、技术方案、任务列表之间的矛盾或遗漏,避免开发偏离目标,同时支持并行任务识别,提升开发效率。
SpecKit组成与目录结构
仓库主要包含:src/specify_cli(CLI)、templates/(规格/计划/任务模板)、scripts/(自动化脚本)、memory/(团队“宪法/准则”文档)、docs/ 等。初始化后项目下还会生成 specs// 的规范与计划树。
典型初始化后的目录示例:
1 | your-project/ |
SpecKit典型适用场景
1 | 新功能开发:完整的四阶段流程,适合复杂功能开发 |


