用途:帮助用户实现一个 spec-driven 变更,按顺序处理未完成任务,每完成一项即在 tasks.md 中标记完成。
前置条件:项目根目录必须存在 .spec-driven/ 目录,可用 ls .spec-driven/ 验证;若不存在,需先运行 /spec-driven-init 初始化。
主要步骤:1) 运行 node {{SKILL_DIR}}/scripts/spec-driven.js modify 列出活动变更,询问要应用哪个变更;2) 加载上下文,读取 proposal.md、specs/ 下的 delta 规格、design.md、tasks.md、questions.md,以及 config.yaml、specs/INDEX.md 和相关规格文件。要求把先前对话上下文视为过时且不可靠,必须依据当前变更产物、基础规格和仓库状态重建工作上下文;若与文件或仓库状态冲突,以文件与仓库状态为准。3) 运行 node {{SKILL_DIR}}/scripts/spec-driven.js apply <name> 查看任务摘要(总数、已完成、剩余)。4) 检查 questions.md 中未解决的 - [ ] Q: 条目,若有则列出并停止,待用户解决后再继续。5) 按顺序实现每个 - [ ] 任务:先读相关代码,实现后验证不违反 proposal.md 中的 Unchanged Behavior;对 ## Testing 任务需实际运行 lint、单元测试并确认通过后再标记完成;把 - [ ] 改为 - [x],并简要确认。6) 全部完成后重读 changes/<name>/specs/ 下文件,核对是否准确反映实际实现,如有偏差则更新。7) 再次运行 apply 确认剩余为 0,并建议运行 /spec-driven-verify <name> 验证。
规则:修改前先读现有代码;按顺序完成任务,除非有明确依赖原因;实现后立即标记完成,不要最后批量标记;任务含糊时先读 proposal.md 和 design.md 再询问用户;不要实现已标记 - [x] 的任务。
限制:资料未提供该技能的收费、价格、平台支持范围或效果数据。