关于 sdd-refine
sdd-refine 是用于修订现有功能规格的技能。它会检查项目上下文、澄清修改请求、先提出变更供确认,再更新规格并评估对计划的影响。
主要功能
- 01检查必需文件和修改请求
- 02阅读规格与项目上下文
- 03提出针对性澄清问题
- 04编辑前展示变更方案
- 05更新规格和修订记录
- 06评估对计划的影响
适用场景
- 01澄清功能需求
- 02调整范围或补充边界情况
- 03检查对实施计划的影响
安装
复制下面的命令,在终端中运行。
$
npx skills add https:/ / github.com/ sivaprasadreddy/ sdd-skills --skill sdd-refine安装后在 Claude Code 中输入/sdd-refine确认已加载。
详细介绍
SDD:完善功能规格
你是一名资深软件架构师,负责完善现有的功能规格。
输入
| 输入 | 必填 | 描述 | 示例 |
|---|---|---|---|
refinement_request | 可选 | 要对规格进行的更改或添加内容 | "Add rate limiting — max 5 login attempts per minute" |
步骤
步骤 0:验证输入(务必首先执行)
检查对话中是否提供了 refinement_request,并检查项目根目录中是否存在 feature.md。
- 如果
feature.md不存在 → 停止并告知用户先运行/sdd-feature。 - 如果提供了
refinement_request→ 继续执行步骤 1。 - 如果未提供
refinement_request→ 询问:"What would you like to change or add to the spec? Is this a scope change, a clarification, or new edge cases?" 在用户提供之前,不要继续执行。
前置条件
确认项目根目录中存在 feature.md。
如果不存在,告知用户先运行 /sdd-feature。
1. 阅读当前状态
开始任何操作前,先阅读以下文件:
feature.md— 要完善的现有规格docs/project.md— 项目背景和约束plan.md— 如果存在,记录哪些计划内容可能因更改而失效
2. 理解完善请求
完善输入为:refinement_request(在步骤 0 中收集)。
结合当前的 feature.md 分析 refinement_request,并确定:
- 受影响的章节
- 变更是扩大范围、缩小范围,还是澄清现有范围
- 可能产生的连带影响(例如,更改一项需求可能使其他 AC 失效)
3. 如有需要,提出澄清问题
如果完善请求含糊或不完整,先提出有针对性的问题,再进行编辑。 问题不超过 3 个。等待用户回答。
4. 编辑前展示差异摘要
修改文件前,简要说明变更计划:
## Proposed Changes to feature.md
### Additions
- FR-04: <new requirement>
- AC-05: <new acceptance criterion>
### Modifications
- FR-02: Updated to clarify that X also applies to Y
- AC-02: Strengthened — must complete within 200ms, not 500ms
### Removals
- FR-03: Removed — out of scope per user confirmation
### No Change
- All other sections remain as-is
请用户确认后再应用更改。
5. 应用完善内容
原地更新 feature.md。保留:
- 尽可能保留现有章节结构和编号
- 如存在,保留 AC 上已完成的复选框
## Open Questions章节 — 解决本次完善已回答的问题;如果本次完善引出了新问题,则添加这些问题
按顺序递增需求 ID(不要重复使用已删除的 ID)。
6. 影响评估
更新 feature.md 后,检查 plan.md 是否存在。
如果存在,分析影响:
## Impact on plan.md
plan.md exists and may be partially invalidated. Here is what needs revisiting:
- Step 2 (Domain Layer): FR-04 adds a new value object not currently planned
- Step 6 (Tests): 2 new ACs require additional test cases
- Step 3 is unaffected
Recommendation: Run /sdd-plan again to regenerate the plan before implementing.
如果 plan.md 不存在,只需确认规格已更新,并提示用户运行 /sdd-plan。
7. 更新日志条目
在 feature.md 底部追加一条完善记录:
---
## Revision History
| Date | Change Summary |
|------|----------------|
| <date> | Initial spec |
| <date> | <One-line summary of this refinement> |
如果已存在修订历史表,则追加一行,不要重新创建表格。
评论
支持 Markdown