spec-update
SKILL.md
Spec Update
核心原则
- 同目录原则:update 文档必须放在原 plan.md 的同一目录下,禁止创建新目录
- 不归档原则:更新完成后不归档,保留在原目录以便后续更新
- 编号递增:update-001.md → update-002.md → update-003.md(三位数,不跳号)
- 严格遵循方案:只实现 update-xxx.md 定义的修改,不添加方案之外的内容
- 回归测试必须通过:新增测试 + 修改测试 + 原有功能回归测试全部通过
用户确认(必须执行)
在以下两个节点必须使用 AskUserQuestion 工具:
节点 1 — 更新方案确认(创建 update-xxx.md 后):
AskUserQuestion(
questions=[{
"question": "update-xxx.md 已创建完成,更新方案是否可以开始执行?",
"header": "确认方案",
"multiSelect": false,
"options": [
{
"label": "确认,开始执行",
"description": "更新方案正确,可以开始实现"
},
{
"label": "需要修改",
"description": "更新方案需要调整,请说明修改要求"
}
]
}]
)
节点 2 — 审查报告确认(生成 update-xxx-review.md 后):
AskUserQuestion(
questions=[{
"question": "update-xxx-review.md 已创建完成,审查结果是否通过?",
"header": "确认审查",
"multiSelect": false,
"options": [
{
"label": "审查通过",
"description": "更新实现符合要求,审查通过"
},
{
"label": "需要修复",
"description": "存在问题需要修复,请说明问题"
}
]
}]
)
响应处理:选择确认选项 → 继续;选择修改/修复或"Other" → 根据用户反馈调整后重新确认。
文档模板
- update-xxx.md 模板:见 references/update-template.md(含 frontmatter 字段说明)
- update-xxx-summary.md 模板:见 references/summary-template.md(含 frontmatter 字段说明)
工作流程
- 确认原 Spec 目录:找到目录,确认
plan.md和summary.md都存在。若缺少 summary.md,先用 spec-execute 完成原功能 - 确定更新编号:检查目录下已有的
update-*.md,确定下一个编号 - 创建 update-xxx.md:参照 references/update-template.md,在同一目录创建
- 等待用户确认:使用
AskUserQuestion工具(节点 1) - 检索历史经验:调用
/exp-search <关键词> - 创建任务清单:根据 update-xxx.md 的"实现步骤"章节创建
- 按方案实现更新:严格遵循方案,不修改方案之外的代码
- 编写/更新测试:新增测试 + 修改测试 + 回归测试
- 运行测试验证:全部通过才能继续
- 创建 update-xxx-summary.md:参照 references/summary-template.md,应用 Obsidian 格式:
[[plan|设计方案]]双链、> [!success]/> [!warning]Callout、#spec/更新标签 - 使用 spec-review 审查:生成 update-xxx-review.md
- 等待用户确认审查报告:使用
AskUserQuestion工具(节点 2),完成后不归档
错误处理
| 场景 | 解决方案 |
|---|---|
| 原 Spec 目录不存在 | 确认路径;若为新功能,用 spec-write + spec-execute |
| 缺少 summary.md | 先用 spec-execute 完成原功能 |
| 回归测试失败 | 分析原因 → 修复回归代码 → 重新测试 → 全部通过后才能继续 |
后续动作
完成更新后:
- 调用
/exp-reflect进行经验反思 - 如有经验沉淀,更新 summary 添加经验引用
- 不归档,保留在原目录
Weekly Installs
4
Repository
hhu3637kr/skillsGitHub Stars
110
First Seen
13 days ago
Security Audits
Installed on
trae-cn4
gemini-cli4
claude-code4
github-copilot4
codex4
amp4