spec-driven-brainstorm
You are helping the user turn an early-stage idea into a spec-driven change proposal.
Prerequisites
The .spec-driven/ directory must exist at the project root. Before
proceeding, verify:
ls .spec-driven/
If this fails, the project is not initialized. Run /spec-driven-init first.
Steps
-
Start from the idea, not the artifact list — ask the user what they want to achieve, what problem they are trying to solve, and any known constraints or preferences. Do not require a change name up front.
-
Read project context and existing specs early — before narrowing scope, read:
.spec-driven/config.yaml— usecontextas project background and treatrulesas binding constraints.spec-driven/specs/INDEX.md— identify existing spec areas that may already cover the requested behavior- Every relevant main spec file referenced by
INDEX.mdthat appears related to the idea being discussed
-
Brainstorm until the change is decision-ready — use the discussion to converge on:
- the desired outcome and user-visible behavior
- what is in scope and explicitly out of scope
- important tradeoffs, constraints, risks, and unchanged behavior
- which existing spec files will likely be modified, or whether a new spec area is needed
- any questions that still need a human answer before implementation
-
Suggest the change name — once the idea is coherent enough, propose a short kebab-case change name. If the user already provided a valid name, keep it. If not, suggest one that reflects the agreed change scope.
-
Present a proposal checkpoint — before creating any files, summarize:
- the proposed change name
- the goal and scope
- the main spec areas expected to change
- key decisions or tradeoffs already settled
- any unresolved questions that would go into
questions.md
Then ask for explicit confirmation. If the user wants revisions, continue the brainstorm and re-summarize until confirmed.
-
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
/spec-driven-propose:- write
proposal.mdwith What, Why, Scope, and Unchanged Behavior - write
design.mdwith Approach, Key Decisions, and Alternatives Considered - populate
changes/<name>/specs/with delta spec files aligned by path with the main.spec-driven/specs/structure - write
tasks.mdwith atomic checklist items under## Implementation,## Testing, and## Verification - write
questions.md, recording every unresolved point under## Open, or leave<!-- No open questions -->if nothing is unclear
- write
-
Validate before presenting the proposal — run:
node {{SKILL_DIR}}/scripts/spec-driven.js verify <name>- Fix any safe artifact-format issues immediately and rerun
verify - 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
- Fix any safe artifact-format issues immediately and rerun
-
Hand off like propose — show the user the generated artifacts, summarize the final proposed scope, and list any open questions that must be answered before
/spec-driven-apply.
Rules
- Do not implement code — this skill is planning only
- Do not scaffold proposal artifacts until the user explicitly confirms the brainstorm summary and change name
- Read
.spec-driven/config.yaml,INDEX.md, and relevant main specs before locking scope or writing delta specs - Suggest a kebab-case change name when the user starts with only a rough idea
- Record unresolved ambiguity in
questions.md; do not guess silently - After confirmation, follow the same artifact-writing and validation standard as
/spec-driven-propose
More from kw12121212/slim-spec-driven
spec-driven-init
Initialize a .spec-driven/ directory in a project. Creates config.yaml, roadmap/, and specs/ scaffold, then guides the user to fill in project context.
15spec-driven-archive
Archive a completed spec-driven change. Requires completed tasks, merges delta specs into main specs, then moves the change to archive/ with a date prefix.
15spec-driven-propose
Propose a new spec-driven change. Scaffolds proposal.md, specs/ delta files, design.md, tasks.md, and questions.md for a named change, populated with project context.
15spec-driven-auto
Run the full spec-driven workflow automatically. Proposes, implements, verifies, reviews, and archives a change with one mandatory proposal checkpoint plus any extra confirmations required by blocking conditions.
14spec-driven-verify
Verify a spec-driven change is complete and correctly implemented. Checks task completion, implementation evidence, and spec alignment.
14spec-driven-review
Review the code quality of a spec-driven change. Checks readability, security, performance, and best practices before archiving.
14