规格驱动开发工具包 speckit

Spec Kit 是一个规格驱动开发 (SDD) 工具包,通过人工智能将自然语言描述转化为可执行规格、实现计划和任务列表。适用于功能规划、产品需求文档创建、敏捷开发等场景,提升软件开发效率和质量。关键词:规格驱动开发、AI辅助、代码生成、软件开发自动化、任务管理、SDD、敏捷开发。

架构设计 0 次安装 0 次浏览 更新于 3/7/2026

名称: speckit 描述: 规格驱动开发 (SDD) 工具包。将想法转化为可执行规格、实现计划和任务列表。用于功能规划、PRD 创建,或当用户调用 /speckit.specify、/speckit.plan、/speckit.tasks 命令时。 许可证: MIT

Spec Kit: 规格驱动开发

概述

Spec Kit 实现 规格驱动开发 (SDD) - 一种以规格驱动代码而非反之的方法论。规格不仅是代码的文档,代码成为规格的表达。

权力反转

传统开发:代码是真理,规格是脚手架 SDD:规格是真理,代码是生成输出

这通过 AI 使规格可执行,消除了意图与实现之间的差距。

命令

/speckit.specify <功能描述>

从自然语言描述创建全面的功能规格。

用法: /speckit.specify 实时聊天,带消息历史记录和在线状态

输出:

  • specs/{功能名称}/spec.md - 完整功能规格
  • specs/{功能名称}/checklists/requirements.md - 质量验证清单

过程:

  1. 解析用户描述,提取关键概念(参与者、操作、数据、约束)
  2. 生成带优先故事的用户场景(P1、P2、P3)
  3. 定义功能需求(FR-001、FR-002 等)
  4. 创建可衡量的成功标准
  5. 识别关键实体
  6. 根据质量清单验证
  7. 如有关键模糊性,提出澄清问题(最多 3 个)

指南:

  • 关注用户需要什么和为什么
  • 避免如何实现(无技术栈、API、代码结构)
  • 使用行业标准做出有根据的猜测
  • 限制 [需要澄清] 标记至最多 3 个
  • 每个需求必须可测试

详细模板:阅读 references/spec-template.md 命令详情:阅读 references/commands/specify.md


/speckit.plan [技术上下文]

从现有规格创建实现计划。

用法: /speckit.plan WebSocket、PostgreSQL、Redis/speckit.plan(将从上下文确定技术)

先决条件: 功能目录中必须存在 spec.md

输出:

  • specs/{功能}/plan.md - 带技术决策的实现计划
  • specs/{功能}/research.md - 技术研究和决策
  • specs/{功能}/data-model.md - 实体定义
  • specs/{功能}/contracts/ - API 规格(OpenAPI/GraphQL)
  • specs/{功能}/quickstart.md - 验证场景

过程:

  1. 加载功能规格和项目章程
  2. 填充技术上下文部分
  3. 运行章程检查(评估架构门)
  4. 阶段 0:研究未知,生成 research.md
  5. 阶段 1:设计数据模型,生成合约
  6. 设计后重新评估章程合规性

章程门(如使用章程):

  • 简单性门:使用 ≤3 个项目?无过度设计?
  • 反抽象门:直接使用框架?
  • 集成优先门:合约定义了吗?

详细模板:阅读 references/plan-template.md 命令详情:阅读 references/commands/plan.md


/speckit.tasks

从实现计划生成可执行任务列表。

用法: /speckit.tasks

先决条件: 必须存在 plan.mdspec.md

输出:

  • specs/{功能}/tasks.md - 依赖顺序任务列表

过程:

  1. 加载 plan.md(技术栈、结构)和 spec.md(用户故事)
  2. 可选加载:data-model.md、contracts/、research.md
  3. 按用户故事组织生成任务:
    • 阶段 1:设置(共享基础设施)
    • 阶段 2:基础(阻塞先决条件)
    • 阶段 3+:按优先级顺序的用户故事(P1、P2、P3…)
    • 最终阶段:完善与跨领域
  4. [P] 标记可并行任务
  5. 编号任务(T001、T002…)
  6. 生成依赖图和并行执行示例

任务格式: [ID] [P?] [故事] 描述

  • [P] = 可并行运行(不同文件,无依赖)
  • [故事] = 用户故事(US1、US2、US3)

详细模板:阅读 references/tasks-template.md 命令详情:阅读 references/commands/tasks.md


工作流示例

# 1. 创建规格(5 分钟)
/speckit.specify 带消息历史记录和用户在线状态的实时聊天

# 2. 生成实现计划(5 分钟)
/speckit.plan 用于消息的 WebSocket、用于历史的 PostgreSQL、用于在线状态的 Redis

# 3. 创建任务列表(5 分钟)
/speckit.tasks

结果(15 分钟内):

  • 完整功能规格,含用户故事和验收标准
  • 带技术理由的详细实现计划
  • API 合约和数据模型
  • 按用户故事组织的可执行任务列表

项目章程

章程定义了项目的不可变架构原则。当位于 memory/constitution.md 时,/speckit.plan 命令将:

  1. 规划前验证章程门
  2. 要求任何违规的正当理由
  3. 跟踪复杂性偏差

示例原则:

  • 库优先:功能从独立库开始
  • 测试优先:TDD 强制(红-绿-重构)
  • 简单性:最多 3 个项目,YAGNI
  • 集成优先:真实数据库而非模拟

章程模板:阅读 references/constitution-template.md

关键概念

用户故事组织

任务按用户故事分组以启用:

  • 独立实现
  • 独立测试
  • 增量交付(先交付 P1,再 P2,再 P3)

MVP 优先交付

  1. 完成设置 + 基础阶段
  2. 实现用户故事 1(P1)→ 测试 → 部署
  3. 添加用户故事 2(P2)→ 测试 → 部署
  4. 继续增量

模板驱动质量

模板约束 AI 行为以获得更好结果:

  • 防止过早实现细节
  • 强制明确不确定性标记
  • 强制执行测试优先思维
  • 防止推测性功能

文件位置

在项目中工作时:

  • 规格:specs/{功能名称}/
  • 章程:memory/constitution.md

参考文件

  • references/spec-template.md - 功能规格模板
  • references/plan-template.md - 实现计划模板
  • references/tasks-template.md - 任务列表模板
  • references/constitution-template.md - 项目章程模板
  • references/methodology.md - 完整 SDD 哲学文档
  • references/commands/ - 详细命令定义