AI编程利器——Spec Kit

大模型向量数据库容器
🌱 Spec Kit

更快地构建高质量软件。

一个开源工具包,让你专注于产品场景和可预测的结果,而不是从头开始对每个部分进行氛围式编码。


目录

•🤔 什么是规范驱动开发?[1]•⚡ 快速开始[2]•📽️ 视频概览[3]•🤖 支持的 AI 代理[4]•🔧 Specify CLI 参考[5]•📚 核心理念[6]•🌟 开发阶段[7]•🎯 实验目标[8]•🔧 先决条件[9]•📖 了解更多[10]•📋 详细流程[11]•🔍 故障排除[12]•👥 维护者[13]•💬 支持[14]•🙏 致谢[15]•📄 许可证[16]

🤔 什么是规范驱动开发?

规范驱动开发颠覆了 传统的软件开发方式。几十年来,代码一直是核心——规范只是我们搭建后、在开始编码的“真正工作”时就被丢弃的脚手架。规范驱动开发改变了这一点:规范变得可执行 ,直接生成可工作的实现,而不仅仅是指导它们。

⚡ 快速开始

1. 安装 Specify CLI

选择你偏好的安装方式:

选项 1:持久化安装(推荐)

一次安装,随处使用:

  
uv tool install specify-cli --from git+https://github.com/github/spec-kit.git

然后直接使用该工具:

  
specify init <PROJECT_NAME>  
specify check

要升级 Specify,请参阅升级指南[17]获取详细说明。快速升级:

  
uv tool install specify-cli --force --from git+https://github.com/github/spec-kit.git

选项 2:一次性使用

无需安装,直接运行:

  
uvx --from git+https://github.com/github/spec-kit.git specify init <PROJECT\_NAME>

持久化安装的好处:

•工具保持安装状态并在 PATH 中可用•无需创建 shell 别名•使用 uv tool listuv tool upgradeuv tool uninstall 更好地管理工具•更清晰的 shell 配置

2. 建立项目原则

在项目目录中启动你的 AI 助手。助手将可以使用 /speckit.* 命令。

使用 /speckit.constitution 命令创建你的项目治理原则和开发指南,这些将指导所有后续的开发工作。

  
/speckit.constitution 创建专注于代码质量、测试标准、用户体验一致性和性能要求的原则

3. 创建规范

使用 /speckit.specify 命令描述你想要构建的内容。专注于做什么为什么 ,而不是技术栈。

  
/speckit.specify 构建一个能帮助我整理照片到独立相册的应用程序。相册按日期分组,并且可以在主页通过拖放重新组织。相册从不嵌套在其他相册内。在每个相册内,照片以类似磁贴的界面预览。

4. 创建技术实施计划

使用 /speckit.plan 命令来提供你的技术栈和架构选择。

  
/speckit.plan 应用程序使用Vite并尽可能减少库的数量。尽可能使用原生的 HTML、CSS 和JavaScript。图片不会上传到任何地方,元数据存储在本地SQLite数据库中。

5. 分解为任务

使用 /speckit.tasks 从你的实施计划创建一个可操作的任务列表。

  
/speckit.tasks

6. 执行实施

使用 /speckit.implement 来执行所有任务,并根据计划构建你的功能。

  
/speckit.implement

有关详细的分步说明,请参阅我们的综合指南[18]。

📽️ 视频概览

想看看 Spec Kit 的实际运作吗?观看我们的视频概览[19]!

[20] 视频地址:https://www.youtube.com/watch?v=a9eR1xsfvHg&pp=0gcJCckJAYcqIYzv[21]

🤖 支持的 AI 代理

| 代理 | 支持 | 备注 | | Qoder CLI[22] | ✅ |

| | Amazon Q Developer CLI[23] | ⚠️ | Amazon Q Developer CLI 不支持[24] 斜杠命令的自定义参数。 | | Amp[25] | ✅ |

| | Auggie CLI[26] | ✅ |

| | Claude Code[27] | ✅ |

| | CodeBuddy CLI[28] | ✅ |

| | Codex CLI[29] | ✅ |

| | Cursor[30] | ✅ |

| | Gemini CLI[31] | ✅ |

| | GitHub Copilot[32] | ✅ |

| | IBM Bob[33] | ✅ | 基于 IDE 的代理,支持斜杠命令 | | Jules[34] | ✅ |

| | Kilo Code[35] | ✅ |

| | opencode[36] | ✅ |

| | Qwen Code[37] | ✅ |

| | Roo Code[38] | ✅ |

| | SHAI (OVHcloud)[39] | ✅ |

| | Windsurf[40] | ✅ |

|

🔧 Specify CLI 参考

specify 命令支持以下选项:

命令

| 命令 | 描述 | | init | 从最新模板初始化一个新的 Specify 项目 | | check | 检查已安装的工具 ( git , claude , gemini , code / code-insiders , cursor-agent , windsurf , qwen , opencode , codex , shai , qoder ) |

specify init 参数与选项

| 参数/选项 | 类型 | 描述 | | <project-name> | 参数 | 新项目目录的名称(如果使用 --here 则可选,或使用 . 表示当前目录) | | --ai | 选项 | 要使用的 AI 助手: claude , gemini , copilot , cursor-agent , qwen , opencode , codex , windsurf , kilocode , auggie , roo , codebuddy , amp , shai , q , bob , 或 qoder | | --script | 选项 | 要使用的脚本变体: sh (bash/zsh) 或 ps (PowerShell) | | --ignore-agent-tools | 标志 | 跳过对 AI 代理工具(如 Claude Code)的检查 | | --no-git | 标志 | 跳过 git 仓库初始化 | | --here | 标志 | 在当前目录初始化项目,而不是创建新目录 | | --force | 标志 | 在当前目录初始化时强制合并/覆盖(跳过确认) | | --skip-tls | 标志 | 跳过 SSL/TLS 验证(不推荐) | | --debug | 标志 | 启用详细的调试输出以进行故障排除 | | --github-token | 选项 | 用于 API 请求的 GitHub 令牌(或设置 GH_TOKEN/GITHUB_TOKEN 环境变量) |

示例

  
# 基本项目初始化  
specify init my-project  
  
# 使用特定 AI 助手初始化  
specify init my-project --ai claude  
  
# 使用 Cursor 支持初始化  
specify init my-project --ai cursor-agent  
  
# 使用 Qoder 支持初始化  
specify init my-project --ai qoder  
  
# 使用 Windsurf 支持初始化  
specify init my-project --ai windsurf  
  
# 使用 Amp 支持初始化  
specify init my-project --ai amp  
  
# 使用 SHAI 支持初始化  
specify init my-project --ai shai  
  
# 使用 IBM Bob 支持初始化  
specify init my-project --ai bob  
  
# 使用 PowerShell 脚本初始化 (Windows/跨平台)  
specify init my-project --ai copilot --script ps  
  
# 在当前目录初始化  
specify init .--ai copilot  
# 或者使用 --here 标志  
specify init --here --ai copilot  
  
# 强制合并到当前(非空)目录,无需确认  
specify init .--force --ai copilot  
# 或者  
specify init --here --force --ai copilot  
  
# 跳过 git 初始化  
specify init my-project --ai gemini --no-git  
  
# 启用调试输出以进行故障排除  
specify init my-project --ai claude --debug  
  
# 使用 GitHub 令牌进行 API 请求(对公司环境有帮助)  
specify init my-project --ai claude --github-token ghp_your_token_here  
  
# 检查系统要求  
specify check

可用的斜杠命令

运行 specify init 后,你的 AI 编码代理将可以访问这些用于结构化开发的斜杠命令:

核心命令

规范驱动开发工作流的必备命令:

| 命令 | 描述 | | /speckit.constitution | 创建或更新项目治理原则和开发指南 | | /speckit.specify | 定义你想要构建的内容(需求和用户故事) | | /speckit.plan | 使用你选择的技术栈创建技术实施计划 | | /speckit.tasks | 为实施生成可操作的任务列表 | | /speckit.implement | 根据计划执行所有任务以构建功能 |

可选命令

用于增强质量和验证的附加命令:

| 命令 | 描述 | | /speckit.clarify | 澄清未明确说明的领域(推荐在 /speckit.plan 之前使用;以前称为 /quizme ) | | /speckit.analyze | 跨工件一致性 & 覆盖率分析(在 /speckit.tasks 之后、 /speckit.implement 之前运行) | | /speckit.checklist | 生成自定义质量检查清单,验证需求完整性、清晰度和一致性(例如“英语的单元测试”) |

环境变量

| 变量 | 描述 | | SPECIFY\_FEATURE | 覆盖非 Git 仓库的功能检测。设置为功能目录名称(例如 001-photo-albums ),以便在不使用 Git 分支时处理特定功能。

必须在您正在使用的代理环境中,在使用 /speckit.plan 或后续命令之前设置。 |

📚 核心理念

规范驱动开发是一个强调以下方面的结构化流程:

意图驱动开发 ,其中规范先定义“做什么”,再定义“怎么做”•创建丰富的规范 ,使用防护栏和组织原则•多步骤精炼 ,而不是从提示词一次性生成代码•高度依赖 先进 AI 模型的规范解释能力

🌟 开发阶段

| 阶段 | 重点 | 关键活动 | | 0 到 1 开发

("绿地开发") | 从零生成 | * 从高层次需求开始

  • 生成规范
  • 规划实施步骤
  • 构建生产就绪的应用程序 | | 创意探索 | 并行实施 | * 探索多样化的解决方案
  • 支持多种技术栈和架构
  • 实验用户体验模式 | | 迭代增强

("棕地开发") | 棕地现代化 | * 迭代添加功能

  • 现代化遗留系统
  • 适应流程 |

🎯 实验目标

我们的研究和实验专注于:

技术独立性

•使用多样化的技术栈创建应用程序•验证规范驱动开发是一个不依赖于特定技术、编程语言或框架的过程的假设

企业约束

•演示关键任务应用程序的开发•整合组织约束(云提供商、技术栈、工程实践)•支持企业设计系统和合规要求

以用户为中心的开发

•为不同的用户群体和偏好构建应用程序•支持各种开发方法(从氛围式编码到 AI 原生开发)

创意与迭代过程

•验证并行实施探索的概念•提供强大的迭代功能开发工作流•扩展流程以处理升级和现代化任务

🔧 先决条件

Linux/macOS/Windows •一个受支持的[41] AI 编码代理。•uv[42] 用于包管理•Python 3.11+[43]•Git[44]

如果在使用某个代理时遇到问题,请提交 issue 以便我们改进集成。

📖 了解更多

详见:https://github.com/github/spec-kit


🔍 故障排除

Linux 上的 Git 凭据管理器

如果你在 Linux 上遇到 Git 身份验证问题,可以安装 Git 凭据管理器:

  
#!/usr/bin/env bash  
set-e  
echo "正在下载 Git 凭据管理器 v2.6.1..."  
wget https://github.com/git-ecosystem/git-credential-manager/releases/download/v2.6.1/gcm-linux_amd64.2.6.1.deb  
echo "正在安装 Git 凭据管理器..."  
sudo dpkg -i gcm-linux_amd64.2.6.1.deb  
echo "正在配置 Git 使用 GCM..."  
git config --global credential.helper manager  
echo "正在清理..."  
rm gcm-linux_amd64.2.6.1.deb
0
0
0
0
关于作者
关于作者

文章

0

获赞

0

收藏

0

相关资源
字节跳动 XR 技术的探索与实践
火山引擎开发者社区技术大讲堂第二期邀请到了火山引擎 XR 技术负责人和火山引擎创作 CV 技术负责人,为大家分享字节跳动积累的前沿视觉技术及内外部的应用实践,揭秘现代炫酷的视觉效果背后的技术实现。
相关产品
评论
未登录
看完啦,登录分享一下感受吧~
暂无评论