mcpField
S
sdd

sdd

github.com/meleantonio开发65955 次安装9 周前更新
代码仓库

关于 sdd

面向希望在实现前先审批需求与设计的规范驱动开发技能。它以 Markdown 文件组织工作,并提供初始化、需求、设计、任务和状态命令。

主要功能

  1. 01创建 spec 和 steering 文件结构
  2. 02根据意图生成 EARS 需求
  3. 03编写设计和顺序任务
  4. 04在各阶段请求审批
  5. 05报告规范进度

适用场景

  1. 01在项目中建立规范工作流
  2. 02将产品意图转为可验证需求
  3. 03规划可追溯的实现任务

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/meleantonio/awesome-econ-ai-stuff --skill sdd

安装后在 Claude Code 中输入/sdd确认已加载。

包含的文件

除 SKILL.md 外,安装时一起下载的参考资料和脚本。

index.md
reference.md
templates/spec/
design.md
requirements.md
tasks.md
templates/steering/
coding-standards.md

详细介绍

规范驱动开发(SDD)

核心理念

  1. 先明确,再编码: 在需求和设计获批之前,绝不生成代码。
  2. 迭代完善: 在需求 → 设计 → 任务之间循环迭代,直至内容完善。
  3. 以文档为准: 以 Markdown 文件为准,而不是聊天内容。

命令

在项目根目录(spec/ 和 steering/ 所在位置)执行。

init

搭建 SDD 文件夹结构并创建模板文件。

  1. 如果 spec/ 已存在,则跳过或先询问是否覆盖。
  2. 创建 spec/ 和 steering/。
  3. 创建 spec/intent.md(空文件或最简占位内容)。
  4. 将此技能 templates/ 目录(与 SKILL.md 位于同一文件夹,或将技能复制到项目后,从 ~/.cursor/skills/sdd/ 下的安装路径)中的模板复制到项目:
    • templates/spec/requirements.md → spec/requirements.md
    • templates/spec/design.md → spec/design.md
    • templates/spec/tasks.md → spec/tasks.md
    • templates/steering/coding-standards.md → steering/coding-standards.md
reqs

根据意图生成 EARS 需求。

  1. 读取 spec/intent.md 和 steering/*.md。
  2. 将意图转换为 EARS 需求(参见下文的 EARS 快速参考)。添加一个 Properties(不变量)部分。
  3. 写入 spec/requirements.md。
  4. 继续之前,请求用户批准。
design

根据需求生成技术设计。

  1. 读取 spec/requirements.md 和 steering/*.md。
  2. 创建技术设计,涵盖架构、数据模型、组件接口、错误处理和安全性。应用下文的设计检查清单。
  3. 写入 spec/design.md。
  4. 继续之前,请求用户批准。
tasks

根据设计生成实现任务。

  1. 读取 spec/design.md 和 spec/requirements.md。
  2. 创建顺序任务列表:最多两级(任务 > 子任务)。将每项任务关联到需求 ID(例如 REQ-001)。遵循下文的任务规则。
  3. 写入 spec/tasks.md。
  4. 继续之前,请求用户批准。
status

报告规范当前状态。

  1. 列出 spec/ 中的文件(也可列出 steering/ 中的文件)。
  2. 如果 spec/tasks.md 存在,统计未勾选的 [ ] 与已勾选的 [x] 数量并进行概述。

EARS 快速参考

  • 通用: <系统> 应 <响应>
  • 事件驱动: WHEN <触发条件> [前置条件] the <系统> shall <响应>
  • 非预期情况: IF <非预期条件> THEN the <系统> shall <响应>
  • 状态驱动: WHILE <系统状态>, the <系统> shall <响应>
  • 可选: WHERE <包含该功能>, the <系统> shall <响应>

使用类似 [REQ-001] 的 ID;添加 Properties(不变量) 部分,写明普遍适用的正确性声明。

设计检查清单

  • 严格编辑(移除过度设计)。
  • 检查循环依赖;通过提取接口、分层或事件解决。
  • 确保与指导文档保持一致。

任务规则

  • 最多两级层级(任务 > 子任务)。
  • 按顺序排列(每项任务都建立在前一项任务的基础上)。
  • 可追溯性:每项任务或子任务都关联到需求 ID(例如 可追溯性: 实现 REQ-001)。

其他资源

  • 有关框架的完整详情(工作流、完善过程、迭代触发条件),请参阅 reference.md。

评论

支持 Markdown