From h-superpowers
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
/h-superpowers:brainstormingThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
Help turn ideas into fully formed designs and specs through natural collaborative dialogue.
Help turn ideas into fully formed designs and specs through natural collaborative dialogue.
Start by understanding the current project context, then ask questions one at a time to refine the idea. Once you understand what you're building, present the design and get user approval.
Escalate to a design-and-approval cycle before implementing when the work is **irreversible or destructive** — its harm escapes a `git` rollback (data / schema migrations, deleting or overwriting data or history, a published / public contract, external side effects like payments or emails, security / auth / secrets) — OR it is **obviously large / multi-subsystem**, OR the **user asked to design** (see using-superpowers → Right-Sizing Process). When escalating, do NOT invoke any implementation skill, write code, scaffold, or take implementation action until you have presented a design and the user has approved it.Otherwise — reversible, not-obviously-large work — do NOT gate: state a one-line intent, implement directly under the discipline (test-driven-development, systematic-debugging, verification-before-completion), and arm the spike-checkpoint so a mis-size is recoverable. In autonomous/headless runs with no user to approve, never stall.
Size by reversibility and blast radius, not line count. Two failure modes:
git rollback, design first, however short the diff.You MUST create a task for each of these items and complete them in order:
docs/superpowers/specs/YYYY-MM-DD-<topic>-design.md and commitdigraph brainstorming {
"Explore project context" [shape=box];
"Visual questions ahead?" [shape=diamond];
"Offer Visual Companion\n(own message, no other content)" [shape=box];
"Ask clarifying questions" [shape=box];
"Propose 2-3 approaches" [shape=box];
"Present design sections" [shape=box];
"User approves design?" [shape=diamond];
"Write design doc" [shape=box];
"Spec self-review\n(fix inline)" [shape=box];
"User reviews spec?" [shape=diamond];
"Invoke writing-plans skill" [shape=doublecircle];
"Explore project context" -> "Visual questions ahead?";
"Visual questions ahead?" -> "Offer Visual Companion\n(own message, no other content)" [label="yes"];
"Visual questions ahead?" -> "Ask clarifying questions" [label="no"];
"Offer Visual Companion\n(own message, no other content)" -> "Ask clarifying questions";
"Ask clarifying questions" -> "Propose 2-3 approaches";
"Propose 2-3 approaches" -> "Present design sections";
"Present design sections" -> "User approves design?";
"User approves design?" -> "Present design sections" [label="no, revise"];
"User approves design?" -> "Write design doc" [label="yes"];
"Write design doc" -> "Spec self-review\n(fix inline)";
"Spec self-review\n(fix inline)" -> "User reviews spec?";
"User reviews spec?" -> "Write design doc" [label="changes requested"];
"User reviews spec?" -> "Invoke writing-plans skill" [label="approved"];
}
The terminal state is invoking writing-plans. Do NOT invoke any domain-specific implementation skill (e.g., UI builders, scaffolding tools). The ONLY skill you invoke after brainstorming is writing-plans.
Understanding the idea:
Exploring approaches:
Presenting the design:
Design for isolation and clarity:
Working in existing codebases:
Documentation:
docs/superpowers/specs/YYYY-MM-DD-<topic>-design.mdSpec Self-Review: After writing the spec document, look at it with fresh eyes. Calibration: only flag issues that would cause real problems during implementation planning — stylistic preferences, minor wording, and "this section could be longer" don't count. Fix or skip them silently.
Fix any real issues inline. No need to re-review — just fix and move on.
User Review Gate: After the spec self-review, ask the user to review the written spec file before proceeding to writing-plans. The user may have caught something the design conversation missed once they see it on paper.
Implementation:
A browser-based companion for showing mockups, diagrams, and visual options during brainstorming. It's a tool, not a mode — accepting the companion means it's available for questions that benefit from visual treatment, not that every question goes through the browser.
Offering the companion: When upcoming questions are likely to involve visual content (mockups, layouts, diagrams), offer it once for consent:
"Some of what we're working on might be easier to explain if I can show it to you in a web browser. I can put together mockups, diagrams, comparisons, and other visuals as we go. This feature is still new and can be token-intensive. Want to try it? (Requires opening a local URL)"
Make this offer its own message. No clarifying questions, no context summary, no other content alongside it — just the offer, then wait for the user's response. If they decline, continue with text-only brainstorming.
Per-question decision: Even after the user accepts, decide for each question whether to use the browser or the terminal. The test: would the user understand this better by seeing it than reading it?
A question about a UI topic isn't automatically a visual question. "What does personality mean in this context?" is conceptual — use the terminal. "Which wizard layout works better?" is visual — use the browser.
If the user agrees to the companion, read the full guide before proceeding:
skills/brainstorming/visual-companion.md
Invoked by: User directly (entry point for creative work)
Hands off to:
Optional companion:
visual-companion.md.Guides creation, editing, and verification of skills for AI coding agents using test-driven development with subagent scenarios. Use when authoring or debugging skills.
npx claudepluginhub ehartye/hartye-superpowers --plugin h-superpowers