用途:帮助用户从路线图中选择下一个变更,并把确认后的推荐转化为标准的 spec-driven 变更。仅做规划,不实现代码。
主要能力:先读取路线图上下文(.spec-driven/config.yaml、roadmap/INDEX.md、相关里程碑文件、specs/INDEX.md、相关主 spec 文件)及 roadmap-status 输出;默认按依赖顺序推荐——从最早到最晚扫描里程碑,在各里程碑内选第一个未完成、.spec-driven/changes/ 中无对应活动变更、且依赖均已完成的planned change。若用户明确指定规划目标(如影响、紧迫性、风险降低),则按该目标优化。未被选中的候选也会说明。
使用方式:前置要求 .spec-driven/ 目录存在于项目根,可用 ls .spec-driven/ 校验;若项目未初始化需先运行 /spec-driven-init;若 .spec-driven/roadmap/ 缺失,用 node {{SKILL_DIR}}/scripts/spec-driven.js init 修复。命令包括 init: node {{SKILL_DIR}}/scripts/spec-driven.js init;roadmap-status: node {{SKILL_DIR}}/scripts/spec-driven.js roadmap-status;propose: node {{SKILL_DIR}}/scripts/spec-driven.js propose <name>;verify: node {{SKILL_DIR}}/scripts/spec-driven.js verify <name>。推荐前展示检查点(变更名、所属里程碑、目标与范围、预期改动的主 spec 区域、推荐理由、未决问题),须获用户明确确认;如有未决问题,需以 Question、Explanation、Impact、Recommendation 结构逐条提出并等用户答复。确认后运行 propose <name> 生成 .spec-driven/changes/<name>/,填写 proposal.md、design.md、delta spec 文件(按主 spec 路径镜像,可含 mapping frontmatter)、tasks.md(Implementation/Testing/Verification,测试需含 lint/validation 类与 unit test 关键词并给出可运行命令)和 questions.md。最后运行 verify <name>,安全格式问题即时修复并重跑;仅剩未决问题视为正常,非问题类错误须停止并报告;随后询问用户选择 /spec-driven-apply <name> 或 /spec-driven-auto,不自动进入执行路径。
限制:仅限已在路线图“Planned Changes”下的条目,推荐依据路线图上下文与 roadmap-status;未确认前不搭建工件;测试命令无法从仓库上下文确定时记入 questions.md 而非猜测;子代理仅可做限定的分析类工作,最终推荐、确认检查点和工件写入必须由父代理负责;不得在需求正文中写实现/测试映射。