Spec-Kit 规格驱动开发
Spec-Kit 是 GitHub 官方开源的规格驱动开发(Spec-Driven Development, SDD)工具包。它的核心理念是:规格(Spec)不是代码的附属品,代码才是规格的实现产物。当需求变更时,你重新生成规格而非手动重写代码。
什么是规格驱动开发
传统开发中,代码是主角,规格文档往往写完就过时。SDD 反转了这个关系:
Spec-Kit 将这个理念落地为一个完整的 7 步工作流,由 AI Agent(如 Claude Code)辅助执行:
- Constitution — 建立项目治理原则(不可变的开发宪法)
- Specify — 描述要构建什么(关注 WHAT 和 WHY,不涉及技术栈)
- Clarify — 结构化 Q&A 澄清模糊需求
- Plan — 生成技术实现方案(含技术选型理由)
- Validate — 审计计划的完整性和一致性
- Tasks — 拆分依赖有序的任务列表
- Implement — 按任务列表 TDD 驱动实现
Spec-Kit 的"宪法"机制(Constitution)是其独特之处——它在 memory/constitution.md 中定义项目不可违背的原则(如 Library-First、Test-First、Anti-Abstraction),所有后续生成的规格和代码都受这些原则约束。
安装
前置条件
- Python 3.11+
- Git
- uv(推荐)或 pipx
安装命令
版本管理
初始化项目
新项目
现有项目
--integration claude 会为 Claude Code 生成对应的 Skills 或斜杠命令文件。支持 33 种 AI 编码工具,包括 Copilot、Gemini CLI、Cursor、Codex 等。
初始化后的目录结构
核心命令
基础流程命令
辅助命令
完整工作流示例
以一个"任务管理应用"为例,演示从规格到实现的完整流程:
步骤一:建立治理原则
步骤二:编写规格
Spec-Kit 会创建 specs/001-create-taskify/spec.md,只关注 WHAT 和 WHY,不涉及技术栈选择。
步骤三:澄清需求
系统会通过结构化 Q&A 提问,例如:
- 任务的优先级有几级?
- 截止日期是必填还是选填?
- 删除是软删除还是硬删除?
- 是否需要用户认证?
步骤四:生成技术方案
生成 plan.md(技术选型及理由)、data-model.md(数据模型)、research.md(技术调研)。
步骤五:拆分任务
生成 tasks.md,包含依赖关系、并行标记 [P]、TDD 结构。
步骤六:实现
Spec-Kit 验证前置条件后,按依赖顺序执行任务,严格遵循 TDD。
模板与扩展
模板覆盖优先级
Spec-Kit 支持多层模板覆盖,优先级从高到低:
.specify/templates/overrides/— 项目级覆盖.specify/presets/templates/— 预设模板.specify/extensions/templates/— 扩展模板.specify/templates/— 核心模板
Extensions(扩展)
扩展添加新的命令和工作流:
Presets(预设)
预设定制现有工作流的模板格式:
与其他工具的关系
Spec-Kit 与 CC Learn 文档中介绍的其他工具互补:
如果项目较简单,用 OpenSpec 的 proposal → specs → tasks 流程就够了。如果项目复杂、团队多人协作、需要严格的规格治理和可追溯性,Spec-Kit 的 Constitution + 7 步工作流更合适。
相关资源
- Spec-Kit GitHub — 源码和完整文档
- Spec-Driven Development — SDD 方法论完整文档
- Spec-Kit Extensions — 社区扩展市场
下一步
- OpenSpec 规格驱动 — 了解轻量级的规格驱动方案
- Superpowers 开发工作流 — 了解 TDD 纪律和代码审查
- 最佳实践 — 将 Spec-Kit 融入完整开发工作流

