规范驱动开发工具包

github/spec-kit 访问 GitHub ↗
🔤 Python ★ 129192 ⑂ 0 daily #8 (+892) 抓取 2026-08-16

一句话简介

Spec Kit 是一个基于 Python 的开源工具包,帮助团队通过规范驱动开发(Spec-Driven Development)方法,从需求规范到实现全程规范化地构建高质量软件。

标签

  • 规范驱动开发
  • 软件开发方法论
  • Python
  • 需求工程
  • AI编程助手

适用应用场景

  • 从需求规范自动生成代码实现与测试
  • 在团队中推行规范化开发流程
  • 辅助AI编码助手遵循预定义规范生成代码
  • 管理项目需求与实现之间的一致性

README 中文摘要

项目概述

Spec Kit 是一个开源工具集,把传统的"代码先行"翻转成"规范驱动开发"(Spec-Driven Development,SDD):规范本身成为可执行产物,直接生成可工作的实现,而不是写完就丢的脚手架。其目标是让团队聚焦于产品场景和可预期的结果,避免从零开始"凭感觉编码"。

核心工作流

完整流程包含六个阶段,由一组斜杠命令驱动(在 Codex CLI 的 skills 模式下使用 $speckit-*,GitHub Copilot CLI 通过 /agents 调用):

  1. 建立项目原则——使用 /speckit.constitution 创建治理准则与开发方针。
  2. 撰写功能规范——使用 /speckit.specify 描述"做什么"与"为什么",暂不指定技术栈。
  3. 澄清需求——使用 /speckit.clarify(计划前的推荐步骤)以结构化问答方式补齐未明确点。
  4. 生成技术方案——使用 /speckit.plan 指定技术栈与架构。
  5. 拆解任务——使用 /speckit.tasks 产出可执行任务清单;可用 /speckit.taskstoissues 转为 GitHub Issues。
  6. 执行实现——使用 /speckit.implement 按计划构建;完成后用 /speckit.converge 评估剩余工作并追加任务。

可选命令 /speckit.analyze 用于跨制品的一致性与覆盖度分析,/speckit.checklist 可生成类似"英语单元测试"的需求完整性校验清单。

安装与初始化

依赖 uv(推荐)或 pipx、Python 3.11+、Git。

# 安装 CLI(替换为最新发布标签,保留 v 前缀,例如 v0.12.11)
uv tool install specify-cli --from git+https://github.com/github/spec-kit.git@vX.Y.Z

# 初始化项目并指定编码代理集成
specify init my-project --integration copilot
cd my-project

# 自管理命令
specify self check              # 检查是否有新版本
specify self upgrade --dry-run  # 预览升级
specify self upgrade            # 立即升级到最新稳定版
specify self upgrade --tag vX.Y.Z[suffix]  # 锁定到指定标签

支持 30+ 款 AI 编码代理(CLI 与 IDE),可通过 specify integration list 查看当前可用集成。集成若声明 requires_cli: True,CLI 会校验代理 CLI 是否已安装;可加 --ignore-agent-tools 跳过校验。

Specify CLI 关键命令

specify init <project_name> [--integration <agent>] [--here] [--force]
specify integration list                      # 列出可用集成
specify extension search                      # 搜索扩展
specify extension add <extension-name>        # 安装扩展(增加新能力)
specify preset search                         # 搜索预设
specify preset add <preset-name>              # 安装预设(改造现有工作流)
specify bundle search [<query>]               # 在目录栈中发现 bundle
specify bundle info <bundle-id>               # 查看将要安装的组件清单
specify bundle install <bundle-id>            # 一键安装角色化 bundle
specify bundle list | update | remove         # 维护已安装 bundle
specify bundle catalog list|add|remove        # 管理目录源
specify bundle validate --path ./my-bundle    # 本地校验 bundle
specify bundle build --path ./my-bundle       # 生成可分发 .zip

扩展、预设与 Bundle

模板在运行时按优先级自上而下解析,首个匹配生效:

优先级 组件类型 路径
1 项目本地覆盖 .specify/templates/overrides/
2 Presets .specify/presets/templates/
3 Extensions .specify/extensions/templates/
4 核心内置 .specify/templates/
  • Extension 用于新增命令与模板(例如 Jira 集成、V 模型测试追踪、健康诊断)。
  • Preset 用于改造既有产物与指令(例如强制法规追溯、本地化工作流、测试优先排序)。
  • Bundle 通过 bundle.yml 清单把一组扩展、预设、步骤和流程打包成"角色化套件"(产品经理、安全研究员、开发者等),由优先级目录栈(项目 > 用户 > 内置)解析;install 操作幂等且仅作用于项目根目录,remove 不会删除其他 bundle 仍在使用的组件;所有消费/创作命令均支持离线运行。

开发阶段

阶段 焦点
0-to-1(绿地) 从高层需求生成规范、规划与生产级应用
创造性探索 并行实现多套方案、技术栈与 UX 模式
迭代增强(棕地) 迭代加特性、现代化遗留系统、改造流程

环境要求

  • Linux / macOS / Windows
  • 受支持的 AI 编码代理
  • uv(推荐)或 pipx
  • Python 3.11+、Git

参考文档

完整 CLI 手册与 SDD 方法论详见项目内 docs/installation.mddocs/upgrade.mdspec-driven.md 以及官方文档站 https://github.github.io/spec-kit/。

摘要更新于 2026-07-14 00:31:29 · 原文 36289 字符 · md5 957941444778…