From dmi-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
/dmi-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 PRDs through natural collaborative dialogue.
Help turn ideas into fully formed designs and PRDs 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.
Do NOT invoke any implementation skill, write any code, scaffold any project, or take any implementation action until you have presented a design and the user has approved it. This applies to EVERY project regardless of perceived simplicity.Every project goes through this process. A todo list, a single-function utility, a config change — all of them. "Simple" projects are where unexamined assumptions cause the most wasted work. The design can be short (a few sentences for truly simple projects), but you MUST present it and get approval.
You MUST create a task for each of these items and complete them in order:
docs/PRDs/MM-DD-YYYY-<topic>.md and commitdmi-superpowers:grill-with-docs to stress-test the PRD against the domain modeldmi-superpowers:writing-plans to create TSPdigraph brainstorming {
"Explore project context" [shape=box];
"Ask clarifying questions" [shape=box];
"Propose 2-3 approaches" [shape=box];
"Present design sections" [shape=box];
"User approves design?" [shape=diamond];
"Write PRD" [shape=box];
"PRD self-review\n(fix inline)" [shape=box];
"User reviews PRD?" [shape=diamond];
"Invoke grill-with-docs\n(harden PRD)" [shape=doublecircle];
"Invoke writing-plans skill" [shape=doublecircle];
"Explore project context" -> "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 PRD" [label="yes"];
"Write PRD" -> "PRD self-review\n(fix inline)";
"PRD self-review\n(fix inline)" -> "User reviews PRD?";
"User reviews PRD?" -> "Write PRD" [label="changes requested"];
"User reviews PRD?" -> "Invoke grill-with-docs\n(harden PRD)" [label="approved"];
"Invoke grill-with-docs\n(harden PRD)" -> "Invoke writing-plans skill";
}
The terminal state is invoking grill-with-docs, then writing-plans. After the user approves the PRD, invoke dmi-superpowers:grill-with-docs to harden the PRD against the domain model, then invoke dmi-superpowers:writing-plans to create the TSP. Do NOT invoke frontend-design, mcp-builder, or any other skill. The ONLY skills you invoke after brainstorming are grill-with-docs (first) and then writing-plans.
Understanding the idea:
Exploring approaches:
Presenting the design:
Design for isolation and clarity:
Working in existing codebases:
Documentation:
docs/PRDs/MM-DD-YYYY-<topic>.md
PRD Self-Review: After writing the PRD, look at it with fresh eyes:
Fix any issues inline. No need to re-review — just fix and move on.
User Review Gate: After the PRD review loop passes, ask the user to review the written PRD before proceeding:
"PRD written and committed to
<path>. Please review it and let me know if you want to make any changes before we start writing out the TSP."
Wait for the user's response. If they request changes, make them and re-run the PRD review loop. Only proceed once the user approves.
Implementation:
ponytail is still on from the scoping step, type stop ponytail now — it must not persist past design approval.dmi-superpowers:grill-with-docs to harden the PRD against the domain modeldmi-superpowers:writing-plans to create a detailed TSPdmi-superpowers:ponytail by typing ponytail ultra when you start proposing approaches and scoping the design — challenge whether each piece needs to exist before it reaches the PRD, where scope is still open and nothing is committed. Type stop ponytail once the user approves the design (before writing the PRD), so the lazy-scoping lens does NOT persist into the PRD, grilling, or implementation.A browser-based companion for showing mockups, diagrams, and visual options during brainstorming. Available as a tool — not a mode. Accepting the companion means it's available for questions that benefit from visual treatment; it does NOT mean every question goes through the browser.
Offering the companion (just-in-time): Do NOT offer it upfront. Wait until a question would genuinely be clearer shown than told — a real mockup / layout / diagram question, not merely a UI topic. The first time that happens, offer it then, as its own message:
"This next part might be easier if I show you — I can put together mockups, diagrams, and comparisons in a browser tab as we go. It's still new and can be token-intensive. Want me to? I'll open it for you."
This offer MUST be its own message. Only the offer — no clarifying question, summary, or other content. Wait for the user's response. If they accept, start the server with --open so their browser opens to the first screen automatically. If they decline, continue text-only and don't offer again unless they raise it.
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 is not automatically a visual question. "What does personality mean in this context?" is a conceptual question — use the terminal. "Which wizard layout works better?" is a visual question — use the browser.
If they agree to the companion, read the detailed guide before proceeding:
skills/brainstorming/visual-companion.md
npx claudepluginhub hundredbillion/dmi_superpowers --plugin dmi-superpowersCreates bite-sized, testable implementation plans from specs or requirements, with file structure and task decomposition. Activates before coding multi-step tasks.