roadmap-propose
Compare original and translation side by side
🇺🇸
Original
English🇨🇳
Translation
ChineseYou are helping the user turn planned roadmap work into a normal spec-driven
change.
你将协助用户把路线图中的计划工作转换为标准的spec-driven变更。
Prerequisites
前置条件
The directory must exist at the project root. Before
proceeding, verify:
.spec-driven/ls .spec-driven/If this fails, the project is not initialized. Run first.
/spec-driven-initIf is missing, repair the scaffold first:
.spec-driven/roadmap/node {{SKILL_DIR}}/scripts/spec-driven.js init.spec-driven/ls .spec-driven/如果执行失败,说明项目尚未初始化,请先运行 。
/spec-driven-init如果缺少 目录,请先修复脚手架:
.spec-driven/roadmap/node {{SKILL_DIR}}/scripts/spec-driven.js initSteps
步骤
-
Identify the target planned change — determine which milestone item the user wants to turn into a real change. If they already gave a change name, use it. Otherwise ask whichitem to promote.
Planned Changes -
Read roadmap and spec context first — before scaffolding anything, read:
.spec-driven/config.yaml.spec-driven/roadmap/INDEX.md- the milestone file that contains the target item
.spec-driven/specs/INDEX.md- the relevant main spec files the new change is likely to touch
- the selected planned change entry as a single-line roadmap input
-
Confirm it is already planned work — verify that the selected name is present under a milestonesection before scaffolding.
## Planned Changes -
Extract the roadmap handoff context — treat the selected planned change entry as more than a name lookup:
- use the canonical first line to identify the change name while treating the declared status and summary as metadata on that same line
- use the surrounding milestone sections as context for scope, rationale, sequencing, or constraints when the one-line summary is not sufficient
- treat milestone declared statuses as limited to ,
proposed,active, orblockedcomplete - treat planned change declared statuses as limited to or
plannedcomplete
-
Scaffold the change — run:
node {{SKILL_DIR}}/scripts/spec-driven.js propose <name>This createswith seeded artifact templates..spec-driven/changes/<name>/ -
Fill the standard proposal artifacts — populate:
proposal.mddesign.md- with
tasks.mdcontaining at least one explicit lint or validation command task and one explicit unit test command task when those commands are knowable from repository context## Testing questions.md- delta specs under
changes/<name>/specs/ - mapping frontmatter in delta spec files when implementation and test paths are knowable from repository context Use the roadmap milestone as planning input, but treat the selected planned change as a single-line item and derive any extra context from the milestone sections rather than multiline planned change detail.
-
Validate artifact format — run:
node {{SKILL_DIR}}/scripts/spec-driven.js verify <name>If the command reports repairable format issues, fix them and rerun verify. -
Offer the execution handoff — report the new change path, note which milestone it came from, surface any open questions that must be resolved before implementation, and ask the user whether they want to:
- enter for the stepwise execution path
/spec-driven-apply <name> - enter for the end-to-end execution path Do not auto-enter either execution path without the user's explicit choice.
/spec-driven-auto
- enter
-
确定目标计划变更 —— 明确用户想要转换为实际变更的里程碑项。如果用户已经给出了变更名称,直接使用即可,否则询问需要升级哪个项。
Planned Changes -
先读取路线图和spec上下文 —— 在生成任何脚手架之前,先读取以下内容:
.spec-driven/config.yaml.spec-driven/roadmap/INDEX.md- 包含目标项的里程碑文件
.spec-driven/specs/INDEX.md- 新变更可能涉及的相关主spec文件
- 选中的计划变更条目,作为单行路线图输入
-
确认属于已计划工作 —— 在生成脚手架前,验证选中的名称确实存在于里程碑的章节下。
## Planned Changes -
提取路线图交接上下文 —— 不要仅将选中的计划变更条目当作名称查询依据,还需要:
- 使用规范的第一行识别变更名称,同时将同一行中声明的状态和摘要作为元数据
- 当单行摘要信息不足时,参考周围的里程碑章节作为范围、基本原理、顺序或约束的上下文
- 里程碑声明的状态仅限、
proposed、active、blocked四类complete - 计划变更声明的状态仅限或
planned两类complete
-
生成变更脚手架 —— 运行:
node {{SKILL_DIR}}/scripts/spec-driven.js propose <name>该命令会在目录下生成初始的工件模板。.spec-driven/changes/<name>/ -
填充标准提案工件 —— 填充以下内容:
proposal.mddesign.md- ,当可以从仓库上下文获知测试命令时,在
tasks.md章节至少包含一个明确的lint或校验命令任务,以及一个明确的单元测试命令任务## Testing questions.md- 存放在下的增量spec文件
changes/<name>/specs/ - 当可以从仓库上下文获知实现和测试路径时,在增量spec文件中添加前置元数据(frontmatter)映射 可参考路线图里程碑作为规划输入,但仅将选中的计划变更视为单行项,任何额外上下文都从里程碑章节获取,而非多行的计划变更详情。
-
校验工件格式 —— 运行:
node {{SKILL_DIR}}/scripts/spec-driven.js verify <name>如果命令报告可修复的格式问题,修复后重新运行校验命令。 -
提供执行交接选项 —— 告知用户新的变更路径,说明其来源的里程碑,列出所有实现前必须解决的待解决问题,并询问用户是否想要:
- 输入 选择分步执行路径
/spec-driven-apply <name> - 输入 选择端到端执行路径 未经用户明确选择,不要自动执行任意一种执行路径。
/spec-driven-auto
- 输入
Rules
规则
- This skill creates planning artifacts only — do not implement product code
- Only turn into change scaffolds
Planned Changes - Create the same five artifacts as
spec-driven-propose - Keep implementation and test mappings in spec frontmatter, not in requirement prose
- If testing commands are not knowable from repository context, add an open question instead of guessing them
- Before finishing, rerun until all repairable format issues are fixed
verify
- 本技能仅生成规划工件 —— 不要实现产品代码
- 仅将转换为变更脚手架
Planned Changes - 生成与完全相同的5个工件
spec-driven-propose - 实现和测试映射存放在spec的前置元数据中,不要写在需求正文里
- 如果无法从仓库上下文获知测试命令,不要猜测,添加为待解决问题即可
- 完成前重新运行命令,直到所有可修复的格式问题都被解决
verify