AI 编排框架学习篇(二)| Spec Kit:规约先行 · 0→1
AI 编排框架学习篇(二)| Spec Kit:规约先行 · 0→1
1. 一句话定义
Spec Kit 是 GitHub 开源的一套"规范驱动开发(Spec-Driven Development)“工具包。它让规范(spec)成为可执行文件——你先写规格说明书,AI 根据规格自动生成代码。不再是"先写代码再补文档”,而是"先写规范,代码自动生成"。
和 Superpowers 的区别:Superpowers 也是 spec-driven 理念(brainstorming → writing-plans),但 Superpowers 是一个技能包,而 Spec Kit 是一个独立 CLI 工具,通过 specify 命令和斜杠命令来驱动流程,不依赖具体的技能系统。
2. 适用场景
0→1 最优,1→10 也有官方支持。 当你从零开始一个新项目、需求还没完全定型时,Spec Kit 的核心工作流最为适用——先写规范再生成代码,避免"写到一半发现理解错了"的返工。对于存量项目,Spec Kit 官方内置了 specify init --here 命令和存量项目(迭代增强)开发阶段,可直接在已有代码库中初始化。社区扩展 Brownfield Bootstrap 进一步丰富了存量项目场景。不过总体而言,存量项目的规范渐进引入体验仍不如 OpenSpec 的 delta 模型自然。
3. 它解决了什么问题
大多数开发者(包括 AI)的惯常做法:拿到需求直接写代码。写到一半发现理解错了,或者漏掉了边界情况。返工比一次做好更费时间。
Spec Kit 强制你先写规范、再写代码,并通过结构化流程(constitution → specify → clarify → checklist → plan → tasks → analyze → implement)确保规范在每一步都经过验证,最后 /speckit.implement 根据已验证的规范生成代码。
4. 核心亮点
4.1 可执行的规范
Spec Kit 的核心创新:spec 不只是文档,还是输入。你写完 spec,系统能直接根据它生成代码。不再是"人读了文档再写代码",而是"文档本身就是代码的蓝图"。
4.2 斜杠命令工作流
| 命令 | 阶段 | 做什么 |
|---|---|---|
/speckit.constitution |
定规矩 | 项目原则、编码规范 |
/speckit.specify |
写规范 | 功能需求(what & why) |
/speckit.clarify |
澄清 | 澄清模糊的需求 |
/speckit.checklist |
质量清单 | 验证规范质量 |
/speckit.plan |
规划 | 技术实现方案 |
/speckit.tasks |
拆任务 | 拆成可执行的任务 |
/speckit.analyze |
交叉检查 | spec/plan/tasks 一致性检查(实现前执行) |
/speckit.implement |
实现 | 根据规范生成代码 |
/speckit.taskstoissues |
转 Issue | 将任务转为 GitHub Issues |
4.3 严格的门禁流程
完整流程中每个步骤为下一步提供经过验证的输入。官方也为快速实验提供了精简路径(specify → plan → tasks → implement),可跳过 constitution 和 checklist。确保:
- 规范没写清楚 → 不能开始规划
- 规划未经审核 → 不能开始实现
- 实现没验证 → 不能提交
4.4 跨 30+ AI 编程助手
Spec Kit 不绑定 Claude Code,支持 Claude Code、Copilot、Gemini CLI、Cursor、Windsurf、Codex CLI、Qwen Code、Kilo Code、Roo Code、Amazon Q 等 30+ 编程助手。
4.5 扩展和预设
支持扩展机制(添加新能力)和预设(定制工作流),团队可以根据自己的开发流程自定义。社区已贡献 105 个以上扩展和 22 个以上预设,200 位以上贡献者参与。
5. 概览
| 项目 | 数据 |
|---|---|
| 仓库 | github.com/github/spec-kit |
| Stars | 93K+ |
| 分叉 | 8.1K+ |
| 许可证 | MIT |
| 最新版本 | v0.8.7(2026-05) |
| 依赖 | Python 3.11+、pipx(持久安装)或 uvx(一次性使用) |
⚠️ 理念提醒:Spec Kit 和 Superpowers 都强调"先写规范再写代码"的理念。区别在于 Superpowers 是 Claude Code 技能包,而 Spec Kit 是独立 CLI 工具,支持 30+ AI 编程助手,不限定平台。
6. 优点 & 缺点
| ✅ 优点 | ❌ 缺点 |
|---|---|
| 93K⭐,GitHub 官方出品 | 理念和 Superpowers 重叠 |
| 规范可执行,文档即蓝图 | 需要 Python 3.11+ 环境 |
| 跨 30+ 编程助手,不限 Claude | 存量项目的规范渐进引入体验不如 delta 模型自然 |
| 完整流程保证质量,也支持精简快速路径 | open issues 积压较多,维护消化速度有限 |
| 扩展和预设机制可自定义 | 简单任务用 Spec Kit 太重 |
7. 安装方式
Spec Kit 是 Python 工具,通过 pipx 或 uvx 安装。
方式一:持久安装(推荐,支持 macOS / Linux / Windows)
pipx install git+https://github.com/github/spec-kit.git
安装后直接使用 specify 命令。
方式二:一次性使用(无需安装,支持 macOS / Linux / Windows)
uvx --from git+https://github.com/github/spec-kit.git specify init <项目名称>
初始化项目
specify init <项目名称> --integration claude
--integration 参数指定使用的 AI 编程助手(claude / copilot / cursor 等)。
8. 实战示例:用 Spec Kit 开发一个用户管理 API
假设你要开发一个用户管理的 REST API(Python + FastAPI),支持注册、登录、个人信息查看和更新。以下是完整的 spec-first 流程。
前置条件
先在终端执行安装和初始化(一次性操作):
# 终端执行(持久安装)
pipx install git+https://github.com/github/spec-kit.git
# 终端执行(初始化项目)
specify init user-api --integration claude
安装完成后,Claude Code 中就有了 /speckit.* 斜杠命令可用。后续所有命令都在 Claude Code 中操作。
Step 1:定规矩
在 Claude Code 中输入:
/speckit.constitution
AI 引导你设定项目原则与治理规则,你逐条回答:
Spec Kit → 项目的核心原则是什么?
你 → 安全性优先,所有接口需要认证和授权
Spec Kit → 代码质量标准?
你 → 使用 Black 格式化,mypy 类型检查,测试覆盖率 ≥ 80%
Spec Kit → 架构约束?
你 → RESTful API,遵循 JSON:API 规范,三层架构(router → service → model)
自动产出文件:
CONSTITUTION.md— 项目原则、治理规则、编码规范
所有后续步骤的代码生成都会遵循这里定的规矩。技术栈选择(Python + FastAPI + PostgreSQL)在 Step 5(技术规划)中确定。
✅ 进入下一步。
Step 2:写规范
在 Claude Code 中输入:
/speckit.specify
AI 引导你写出功能需求:
Spec Kit → 描述你要做什么功能?
你 → 用户注册、登录、查看个人信息、更新个人信息
Spec Kit → 详细说一下注册流程?
你 → 用户提供邮箱和密码,密码需要哈希存储,
注册成功后返回 JWT Token
Spec Kit → 登录流程?
你 → 用户提供邮箱和密码,验证成功后返回 JWT Token,
Token 有效期 24 小时
...(继续补充个人信息 CRUD 的细节)
自动产出文件:
SPECIFICATION.md— 完整功能规范,包含每个接口的输入/输出/业务规则
✅ 规范写完了。下一步澄清模糊点。
Step 3:澄清模糊点
在 Claude Code 中输入:
/speckit.clarify
AI 自动识别规范中模糊的地方并提问:
Spec Kit → 我注意到以下几个点需要澄清:
1. 密码强度要求?
你 → 至少 8 位,含大小写字母和数字
2. Token 过期后如何处理?
你 → 返回 401,前端跳转登录页
3. 邮箱需要验证吗?
你 → 初期不需要,后续版本再加
4. 更新个人信息时,邮箱可以修改吗?
你 → 不可以,邮箱一旦注册不可修改
所有模糊点澄清后,SPECIFICATION.md 自动更新,补充这些细节。你不需要手动编辑文件。
✅ 所有需求都已明确。下一步生成质量检查清单。
Step 4:生成质量检查清单
在 Claude Code 中输入:
/speckit.checklist
AI 自动根据规范生成质量检查清单,验证需求的完整性和清晰度:
Spec Kit → 质量检查清单:
✅ 所有用户故事都有明确的验收标准
✅ 边界情况已覆盖(空输入、超长输入)
⚠️ 建议补充:并发注册时的邮箱唯一性保证
清单中的问题可以回到 Step 2 或 Step 3 补充修正。通过后进入技术规划。
✅ 规范质量已验证。下一步出技术方案。
Step 5:技术规划
在 Claude Code 中输入:
/speckit.plan
AI 自动生成技术方案:
Spec Kit → 生成实现方案:
技术栈:Python 3.12 + FastAPI + SQLAlchemy + PostgreSQL
目录结构:
├── app/
│ ├── models/ # SQLAlchemy 模型
│ ├── schemas/ # Pydantic 校验
│ ├── routers/ # API 路由
│ ├── services/ # 业务逻辑
│ └── core/ # 配置、数据库连接
├── tests/
└── alembic/ # 数据库迁移
数据模型:
- User: id, email, hashed_password, nickname, created_at, updated_at
API 路由:
- POST /api/v1/auth/register
- POST /api/v1/auth/login
- GET /api/v1/users/me
- PATCH /api/v1/users/me
自动产出文件:
PLAN.md— 完整技术实现方案
✅ 方案已出。下一步拆任务。
Step 6:拆任务
在 Claude Code 中输入:
/speckit.tasks
AI 自动将方案拆成任务列表:
Spec Kit → 生成任务列表:
1. [core] 项目骨架:配置 FastAPI、数据库连接、Alembic
2. [model] 定义 User 模型和迁移脚本
3. [api] 注册接口 POST /api/v1/auth/register
4. [api] 登录接口 POST /api/v1/auth/login
5. [api] 查看个人信息 GET /api/v1/users/me
6. [api] 更新个人信息 PATCH /api/v1/users/me
7. [test] 为每个接口编写测试
自动产出文件:
TASKS.md— 可执行任务列表,每个任务有明确的完成标准
✅ 任务就绪。下一步交叉检查一致性。
Step 7:交叉检查
在 Claude Code 中输入:
/speckit.analyze
AI 自动检查 spec/plan/tasks 三者的一致性,在写代码之前发现矛盾:
Spec Kit → 一致性检查结果:
✅ 规范与方案对齐,无矛盾
✅ 任务列表完整覆盖规范中的所有需求
✅ 技术方案中的 API 设计与规范中的接口定义一致
⚠️ 建议:任务 7 的测试覆盖可增加边界情况
注意:
/speckit.analyze官方建议在实现之前执行,确保规范、方案、任务三者对齐后再开始写代码。实现后也可再跑一遍做最终验证。
✅ 一致性检查通过。可以开始写代码了。
Step 8:生成代码
在 Claude Code 中输入:
/speckit.implement
AI 自动逐任务生成代码:
Spec Kit → 开始实现...
[1/7] 项目骨架 → 生成 main.py, config.py, database.py
[2/7] User 模型 → 生成 models/user.py, 迁移脚本
[3/7] 注册接口 → 生成 routers/auth.py, schemas/auth.py
[4/7] 登录接口 → 追加到 routers/auth.py
[5/7] 个人信息 → 生成 routers/users.py
[6/7] 更新个人信息 → 追加到 routers/users.py
[7/7] 测试 → 生成 tests/test_auth.py, tests/test_users.py
✅ 全部任务完成。
所有代码已生成到项目目录中,每个文件都符合 Step 1 定的编码规范。
🎉 全部完成。一个完整的用户管理 API,从规范到代码已全部就绪。整个过程你通过 8 个命令完成了从项目原则到代码生成的完整闭环,所有文件均由 AI 自动生成。
总结:Spec Kit 的核心是用结构化流程保证规范质量。从定规矩(constitution)到交叉检查(analyze),每一步都为下一步提供经过验证的输入。analyze 在实现之前执行是官方推荐的关键步骤——确保规范、方案、任务三者对齐后再开始写代码。门禁流程的核心价值在于"每一步都为下一步提供经过验证的输入"——既可以走完整 8 步保证质量,也可以走精简 4 步快速验证想法。
更多推荐



所有评论(0)