You are helping the user choose the next change from the roadmap and turn the
accepted recommendation into a normal spec-driven change.
The
directory must exist at the
project root. Before
proceeding, verify:
If this fails, the project is not initialized. Run
first.
If
is missing, repair the scaffold first:
-
Read roadmap context first — before recommending anything, read:
.spec-driven/roadmap/INDEX.md
- the milestone files relevant to the current phase
.spec-driven/specs/INDEX.md
- the relevant main spec files the recommended change is likely to touch
node {{SKILL_DIR}}/scripts/spec-driven.js roadmap-status
- the planned change entries for the candidates you are considering as
single-line roadmap items in the canonical format
<change-name>` - Declared: <status> - <summary>`
- treat milestone declared statuses as limited to , ,
, or
- treat planned change declared statuses as limited to or
You MAY delegate bounded analysis-only work such as candidate comparison,
roadmap-context summarization, or likely spec-path discovery to a
sub-agent. The parent agent MUST keep the final recommendation, the user
confirmation checkpoint, and all proposal artifact writes.
-
Understand what the user wants optimized — determine whether the user
wants the next change chosen for impact, urgency, dependency order, risk
reduction, or some other planning goal.
-
Recommend one candidate change — propose:
- a kebab-case change name
- which milestone it comes from
- why it is the best next candidate
- what alternatives were not chosen yet
The recommended candidate MUST already appear under a milestone
section.
-
Present a proposal checkpoint — before creating any files, summarize:
- the proposed change name
- which milestone it comes from
- the goal and scope of the recommended change
- the main spec areas expected to change
- why this item is the best next step
- any unresolved questions that would go into
Then ask for explicit confirmation. If the user wants revisions, continue the
recommendation discussion and re-summarize until confirmed.
-
Resolve open questions before scaffolding — if any unresolved questions
remain after the recommendation summary:
- present each open question as a structured block with:
- ask the user to answer or confirm the decision needed
- must clarify why the issue is unresolved or what decision
is still blocking the proposal
- must describe what part of the proposal depends on the answer
- may suggest a preferred answer, but only as a suggestion
- do not treat your recommendation as the resolved answer
- do not continue until the user has given an exact answer or explicit
confirmation
-
Scaffold the change after confirmation — run:
node {{SKILL_DIR}}/scripts/spec-driven.js propose <name>
This creates
.spec-driven/changes/<name>/
with the seeded templates.
-
Fill the five proposal artifacts — after scaffolding, complete the same
proposal workflow used by
:
- write with What, Why, Scope, and
Unchanged Behavior
- write with Approach, Key Decisions, and
Alternatives Considered
- populate with delta spec files aligned by path with
the main structure
- include mapping frontmatter in delta spec files when implementation and
test paths are knowable from repository context
- write with atomic checklist items under ,
, and
- make include at least one explicit lint or validation command
task and one explicit unit test command task when those commands are
knowable from repository context
- write , recording every unresolved point under , or
leave
<!-- No open questions -->
if nothing is unclear
Use the recommended milestone context as planning input, but treat the
selected planned change itself as a single-line roadmap item.
-
Validate before presenting the proposal — run:
node {{SKILL_DIR}}/scripts/spec-driven.js verify <name>
- Fix any safe artifact-format issues immediately and rerun
- If only open questions remain, treat that as expected at proposal time and
surface those questions clearly
- If any non-question error remains, stop and report it instead of presenting
the proposal as ready
-
Offer the execution handoff — show the user the generated artifacts,
summarize the final proposed scope, list any open questions that must be
answered before implementation, and ask whether they want to:
- enter
/spec-driven-apply <name>
for the stepwise execution path
- enter for the end-to-end execution path
Do not auto-enter either execution path without the user's explicit choice.