원클릭으로
brainstorming
// 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.
// 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.
| name | brainstorming |
| description | 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. |
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.
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.Announce: "Design HARD-GATE: I will not write code or scaffold files until you approve this design."
An implementation action is: writing any file that will be part of the product (src/, lib/, app/), running npm init/create-*, generating scaffolding.
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.
If the project has no existing files: skip the "Explore project context" step, start directly with clarifying questions, and create the docs/ directory as the first implementation action after approval.
You MUST create a task for each of these items and complete them in order:
docs/plans/YYYY-MM-DD-<topic>-design.md and commitdigraph 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];
"Incorporate modifications, re-present changed section" [shape=box];
"Write design doc" [shape=box];
"Load 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?" -> "Incorporate modifications, re-present changed section" [label="approved with modifications"];
"Incorporate modifications, re-present changed section" -> "Write design doc";
"User approves design?" -> "Write design doc" [label="yes"];
"Write design doc" -> "Load writing-plans skill";
}
The terminal state is loading writing-plans. Do NOT load frontend-design, mcp-builder, or any other implementation skill. The ONLY skill you load after brainstorming is writing-plans.
Understanding the idea:
Termination criterion for clarifying questions: Ask clarifying questions until: (a) you can restate the goal in one sentence, (b) you know the top constraint, (c) you understand the success criteria. Stop at 3-5 questions unless complexity demands more.
Exploring approaches:
Presenting the design:
Handling partial approval:
Documentation:
docs/plans/YYYY-MM-DD-<topic>-design.mdImplementation:
Use when adding new dependencies, deciding whether to update packages, running security audits on dependencies, evaluating library alternatives, or encountering outdated or vulnerable packages
Use when starting any conversation — establishes how to find and use skills, requiring skill check before ANY response including clarifying questions
Use when you have a written implementation plan to execute in a separate session with review checkpoints
Use when you have a spec or requirements for a multi-step task, before touching code
Use when a task requires interacting with a web browser — testing UI flows, verifying web app behavior, clicking through screens, reading live web content, or automating browser workflows in Google Antigravity
Use when executing implementation plans with independent tasks in the current session