← 返回信息流
GitHub 热榜GitHub Trending · 日·1 小时前

spec-kit:帮助开发者快速上手规范驱动开发的工具包

原标题:github/spec-kit
Python120,281 stars+508 今日

速览

提供规范解析、模板生成和代码骨架创建等核心功能,支持 OpenAPI 等多种规范格式,适用于 API 优先开发、微服务契约驱动开发等场景,降低规范采纳门槛。

AI 深度解读

这是什么

github/spec-kit 是一个开源的 Python 工具包(星标 120K+),核心产品是一个名为 specify 的命令行界面(CLI)。它实现了 Spec-Driven Development(规范驱动开发) 的理念:将软件规格说明(specifications)从“写完后丢弃的脚手架”升级为可执行、可生成实现的一等公民。用户只需描述想要的产品场景和预期结果,由 AI 编码代理根据这些规范自动生成代码,而非手动从头“vibe coding”(随性编码)。

工具与 30+ 款主流 AI 编码代理(如 GitHub Copilot、Codex CLI、Claude Code 等)深度集成,通过 slash 命令(如 /speckit.specify/speckit.plan/speckit.implement)将整个开发流程标准化为可重复的步骤,并支持扩展(Extensions)和预设(Presets)以实现定制化。

解决的问题

传统软件开发中,代码是最终产出,规范文档只是辅助理解,开发完成后常被废弃。导致的痛点包括:

  • 需求与实现脱节:代码随性编写后,原有规范迅速过时,新成员难以理解决策背景。
  • AI 代理输出不可控:当前 AI 编程工具(如 Copilot、Cursor)生成的代码随机性强,缺乏对整体架构和业务场景的约束。
  • 重复性“vibe coding”:开发者需要从零编写每一行代码,即使场景高度相似,也无法复用已有规范和设计模式。
  • 团队协作混乱:缺乏统一的开发流程,不同成员或 AI 代理输出的代码风格、质量标准不统一。

Spec-Driven Development 通过将规范变为可执行的蓝图,确保:

  • 所有实现都严格源于规范,且规范本身是活的、可迭代的。
  • AI 代理生成代码时不再是“自由发挥”,而是按既定计划、任务、约束逐步执行。
  • 开发团队可聚焦于“做什么”和“为什么”,而非“怎么写”的技术细节。

核心功能

  1. 基于 uv 的 CLI 安装与自管理
    使用 uv tool install specify-cli 安装,支持自检更新(specify self check)、自动升级(specify self upgrade)和版本 pin 定。

  2. 项目初始化与 AI 集成
    specify init my-project --integration copilot 创建项目骨架并配置与指定 AI 代理的集成。运行后代理会加载 slash 命令集。

  3. 规范驱动的五步工作流(slash 命令)

    • /speckit.constitution:创建项目宪法(原则、质量标准、测试要求等),为后续决策定调。
    • /speckit.specify:用自然语言描述要构建什么、为什么构建,排除技术细节。
    • /speckit.plan:指定技术栈和架构选择(如 Vite + vanilla HTML/CSS/JS + SQLite)。
    • /speckit.tasks:将计划拆解为可执行的任务列表。
    • /speckit.implement:按任务列表执行全部实现步骤,自动生成代码。
  4. 扩展系统(Extensions)
    允许社区或企业添加新的命令和模板,例如 Jira 集成、代码审查流程、V-Model 测试追溯等。通过 specify extension search/add/remove 管理。

  5. 预设系统(Presets)
    允许覆盖默认的模板和命令,用于强制合规格式、采用特定术语(如 Agile、Kanban、Domain-Driven Design)、本地化语言、添加安全审查关卡等。多个预设可按优先级堆叠。

  6. 模板与本地覆盖
    运行时会从预设层、扩展层、核心层依次搜索模板,优先匹配最高优先级。项目本地 .specify/templates/overrides/ 支持一次性调整。

亮点 / 与同类相比

  • 从“指导代码”到“生成代码”:传统工具(如 OpenAPI Generator、Swagger Codegen)的规范仅用于生成接口骨架;Spec Kit 的规范贯穿整个开发周期,直接驱动完整功能实现(含业务逻辑、数据库、UI)。
  • AI 无关的开放生态:支持 30+ AI 编码代理(CLI 和 IDE 插件),用户不绑定特定厂商;相比之下,Cursor 的“Agent”模式、Copilot 的“Chat”方式均局限在各自平台。
  • 严格的分离关注点:强制将“what/why”(规范)、“how”(计划/技术选型)、“do”(实现)分层,避免 AI 在早期就陷入实现细节,生成更合理的架构。
  • 可定制性极强:扩展和预设系统允许企业将内部编码标准、文档模板、合规要求作为插件注入,而其他 AI 编程辅助工具通常只能通过 prompt 技巧勉强实现一致性。
  • 规范的版本化与复用:规范本身是项目资产,可提交到 Git,团队可基于相同规范重现或升级实现,而传统“vibe coding”结果依赖个人或 AI 的随机状态。

适合谁用 / 上手

适合用户

  • 个体开发者:希望借助 AI 代理快速构建原型或完整功能,但不想被 AI 的“自由发挥”带偏方向。
  • 团队 leader / 技术负责人:需要统一团队使用 AI 编码辅助时的规范和开发流程,确保多成员输出的一致性。
  • 企业级项目:需要将合规、安全审查、质量标准纳入 AI 开发流程,并通过预设强制执行。
  • AI 代理研究者:需要一套标准化的交互协议来对比不同代理在规范驱动下的实现质量。

上手步骤(3 分钟内可运行):

  1. 安装 uv(Python 包管理工具)。
  2. 执行 uv tool install specify-cli --from git+https://github.com/github/[email protected]
  3. 创建项目并绑定 AI 代理:specify init my-project --integration copilot
  4. 使用系列 /speckit.* 命令从规范到实现完整走一遍流程。
  5. 可通过 specify extension add / specify preset add 逐步定制工作流。

最低要求:Python 环境和基本的命令行操作能力。详细安装指南、升级场景和故障排除参考项目文档。

查看原文 →github.com