SuperAPI AI 工具集

sdd-spec-gc

编程与开发

查看项目

更新于 10-16 05:46

技能介绍

用途:sdd-spec-gc 用于清理 master specs 中随时间积累的过期需求,包括未定稿的临时项、引用已不存在产物的需求、多次重构产生的矛盾约束,以及跨变更引入的重复项。触发方式为 /sdd-spec-gc <domain>、/sdd-spec-gc --all,或“spec garbage collection”“clean up stale specs”“remove obsolete requirements”。建议每归档 5–10 个 SDD 变更后运行一次。

主要能力:先加载项目上下文(ai-context/stack.md、architecture.md、conventions.md、CLAUDE.md),缺失时仅记录 INFO。单域模式检查 openspec/specs/<domain>/spec.md 是否存在;全量模式读取 openspec/specs/index.yaml 或扫描目录。扫描前会检查 openspec/changes/ 中的活跃变更并记录 INFO。随后按需求块检测五类候选:PROVISIONAL(含 provisional、temporary、TODO 等关键词)、ORPHANED_REF(引用产物在代码库搜索不到,标记 UNCERTAIN)、SUPERSEDED、DUPLICATE、CONTRADICTORY。

使用方式:先输出 Markdown dry-run 报告,不修改文件;再进入确认门,用户可选全部删除、逐项审查或取消。逐项审查时对每个候选回答 yes/no/skip。确认后删除整个需求块(含标题),保留 spec 头部、其他需求、场景与 Markdown 结构,不重写或合并保留内容。最后在 spec 头部添加 GC 注释,并更新 ai-context/changelog-ai.md。

限制:必须先 dry-run 并获用户确认才能删除;UNCERTAIN 项不得自动删除,建议为“REVIEW for removal”;活跃 delta spec 不跳过扫描但记录 INFO;index.yaml 缺失时回退目录扫描,spec.md 不可读则跳过该域继续,grep 出错标记 UNCERTAIN。该技能面向具有 openspec/specs/ 结构的项目,与具体项目域无关。