You MUST use this before any creative work - creating features, building components, adding functionality, or modifying behavior. Explores user intent, requirements and design before implementation.
How this skill is triggered — by the user, by Claude, or both
Slash command
/superpowers-deepseek-v4:brainstormingThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
Turn ideas into specs through a structured two-phase flow.
Turn ideas into specs through a structured two-phase flow.
A decision-log file is created at session start and appended throughout. Status: Done and git commit only happen at terminal state.
Announce at start: "I'm using the brainstorming SKILL."
Always invoke superpowers-deepseek-v4:resume-brainstorming first. It either:
proceed-with-new-empty (no existing decision logs) → continue to Step 1 with a fresh file.Before creating or modifying the decision-log, spec, or any other project file: Invoke superpowers-deepseek-v4:confirming-worktree-before-edit
Use skills/resume-brainstorming/templates/brainstorm-template.md as the verbatim base. Fill the metadata header:
Date Started: <today>Status: In ProgressCurrent Phase: alignmentLast Updated: <now>Based On: (only if resume-brainstorming returned a new-based-on file)Write the user's first message verbatim under ## Original User Request.
Confirm the <topic-slug> with the user before doing anything else (the filename uses this slug).
If the user's request spans multiple independent subsystems, push back. Help the user decompose into sub-projects; each sub-project gets its own brainstorming + spec + plan cycle. Record the decomposition discussion in the decision log; once the user picks one sub-project to brainstorm, continue.
Ask one question at a time, prefer multiple-choice. After each user response:
### Q<n>: <summary> block to the decision log:
### Q<n>: <one-line question summary>
**Options Presented:** <A/B/C list with one-line each>
**Decision:** <chosen option>
**Rationale:** <user rationale or recommended default accepted>
**Timestamp:** <now>
Last Updated.Continue until you can write the spec. Indicators you are done with Phase A:
Compile an "Alignment Summary" — bullet list of every decision made in Phase A. Append to the decision log:
### Phase A → B Transition Confirmation [<timestamp>]
**Alignment Summary (compiled by ds):**
- Decision 1: ...
- Decision 2: ...
**User Confirmation:** <to be filled>
Show the summary to the user. They either confirm (set User Confirmation: ✓ Confirmed) or request more alignment (set User Confirmation: Needs more — back to Phase A Q<n+1>).
If they request more, go back to Step 3. Only after ✓ Confirmed do you proceed.
Update the file: Current Phase: spec_writing.
Read samples/specs/INDEX.md. Semantically match the current task against each entry's metadata.
<filenames> as references because . Proceeding."Load the chosen samples' full content into your context.
Write docs/superpowers/specs/<today>-<topic-slug>-design.md from scratch. Use the Alignment Summary as your input. Use the matched samples as structural references.
The spec should contain, in order: Problem, Goals, Non-Goals, Design Principles, Acceptance Scenarios (Gherkin Feature/Scenario/Given/When/Then blocks — mandatory, placed here), Design (with subsections per major component), Implementation Phases, Testing Strategy, File Inventory, Out of Scope. Adjust subsection depth to suit the topic; do not omit Acceptance Scenarios.
After writing, update the decision log's Phase B Spec Writing Status: [✓] Initial draft complete (time: <now>). Update Current Phase: review_round_1.
Invoke superpowers-deepseek-v4:multi-reviewer. Pass:
The multi-reviewer SKILL handles the loop, the parallel dispatch, the arbiter, the revisions, and the user-arbitration handoff. When it returns:
STOP_CONVERGED → continue to Step 8.STOP_DEGENERATE or STOP_LIMIT with unresolved → user-arbitration was completed within the subsystem; continue to Step 8 once all unresolved findings have a USER_REJECTED / USER_DEFERRED / FIXED disposition.Update the file: Current Phase: finalizing.
Before showing the spec to the user for sign-off, do a fresh-eyes pass:
Fix any issues inline. No need to re-run multi-reviewer for these (they are owner-eye nits, not blocking).
Show the spec to the user: "Spec written at <spec path>. Please review and either approve or request specific changes."
If the user requests changes, treat them as a tiny new round: revise the spec, append the changes as decisions in the decision log (under a new "Post-Review User Revisions" section), then re-present.
When the user approves:
Status: DoneCurrent Phase: finalizing (stays)Final Spec: <spec path>Last Updated: <now>git add docs/superpowers/specs/<spec-filename>.md docs/superpowers/brainstorms/<decision-log-filename>.md
git commit -m "feat(spec): <topic>"
After commit, tell the user: "Spec committed at <path>. Ready to move to implementation planning? I can invoke writing-plans now."
If the user agrees, invoke superpowers-deepseek-v4:writing-plans. Do not invoke any other implementation skill.
If at any point the user wants to abandon:
Status: Abandoned## Abandonment
**Timestamp:** <now>
**Reason:** <user reason>
git add + git commit -m "abandon brainstorm: <topic>"The visual-companion.md and scripts/ from the previous version of this SKILL remain available. They are unrelated to the multi-reviewer changes; offer them when topics will benefit from mockups, diagrams, or comparisons. The offer must be its own message — see visual-companion.md for details.
superpowers-deepseek-v4:resume-brainstorming (mandatory first step)superpowers-deepseek-v4:multi-reviewer (Phase B review loop)samples/specs/INDEX.md and any sample file selecteddocs/superpowers/brainstorms/<filename>-brainstorm.md (the decision log)docs/superpowers/specs/<filename>-design.md (the produced spec)./visual-companion.md (optional, when visual aids will help)npx claudepluginhub gylove1994/superpowers-deepseek-v4 --plugin superpowers-deepseek-v4Guides creation, editing, and verification of skills for AI coding agents using test-driven development with subagent scenarios. Use when authoring or debugging skills.