From my-plugins
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
/my-plugins:brainstormThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
> **Pipeline position:** stage 1 of 3 — see [`reference/pipeline-flow.md`](../../reference/pipeline-flow.md).
Pipeline position: stage 1 of 3 — see
reference/pipeline-flow.md.
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.
You are sitting in the interface between product and tech and you have equal responsibility to ask important questions regarding product and business decisions as well as deep technical questions if they relate to moving a feature, design or idea towards a well defined and implemented technical solution.
Do NOT invoke any other skill, write any code, scaffold any project, or take any implementation action until the spec is written, the subagent spec-quality review has passed, the handoff doc is written, and the spec PR is open. After the spec PR is open, STOP. The human accepts the spec by merging that PR.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:
.claude-control/specs/YYYY-MM-DD-<topic>-design.md. if not user specifies a different location.claude-scaffolding:spec-compliance-reviewer with skills/brainstorm/spec-quality-review-prompt.md. Apply fixes. Show user diff. Iterate until APPROVED.claude-control/specs/YYYY-MM-DD-<topic>-handoff.md using skills/brainstorm/handoff-template.md.
the purpose of the handoff is for the next agent picking this up knows exactly what to do with the spec it gets handed. What skills to use. What files are needed to read and so on.gh pr create.workflow_stage: spec_pr_open, spec_path, handoff_path, spec_pr_url, and spec_pr_number.Brainstorm complete. Spec PR opened at <url>. Merge it to accept the spec; after merge, dispatch /autopilot:plan-writing.digraph 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 design doc" [shape=box];
"Spec self-review\n(fix inline)" [shape=box];
"User reviews spec?" [shape=diamond];
"Subagent spec review" [shape=box];
"Subagent approves?" [shape=diamond];
"Write handoff" [shape=box];
"Create spec PR" [shape=box];
"Mark spec_pr_open" [shape=box];
"STOP" [shape=doublecircle];
"Explore project context" -> "Ask clarifying questions";
"Ask clarifying questions" -> "Ask clarifying questions" [label="iterate"];
"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?" -> "Subagent spec review" [label="approved"];
"Subagent spec review" -> "Subagent approves?";
"Subagent approves?" -> "Write design doc" [label="fixes"];
"Subagent approves?" -> "Write handoff" [label="clean"];
"Write handoff" -> "Create spec PR";
"Create spec PR" -> "Mark spec_pr_open";
"Mark spec_pr_open" -> "STOP";
}
The terminal state is "spec PR open, session stops". Do NOT invoke plan-writing automatically. The user merges the spec PR to accept it, then manually dispatches plan-writing.
Use AskUserQuestion for all user interactions in this process. Do not use free text to ask questions or get user input.
Understanding the idea:
Exploring approaches:
Presenting the design:
Design for isolation and clarity:
Working in existing codebases:
Documentation:
/specs/YYYY-MM-DD-<topic>-design.md
Spec Self-Review: After writing the spec document, Spawn a seperate agent with all context needed to review the current spec for completeness and issues: Always use opus for this consultance unless stated otherwise
Fix any issues inline. No need to re-review — just fix and move on.
User Review Gate: After the spec review loop passes, ask the user to review the written spec before proceeding:
"Spec 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 implementation plan."
Wait for the user's response. If they request changes, make them and re-run the spec review loop. Only proceed once the user approves.
Create the spec PR before stopping:
git switch -c spec/<topic>
git add <spec-path> <handoff-path> .claude-control/goals/<goal>.md
git commit -m "docs: add <topic> spec"
git push -u origin spec/<topic>
gh pr create --title "<topic> spec" --body "Spec and handoff for <goal>."
If gh is missing or gh auth status fails, stop with a clear blocked state and tell the user authentication is required before the spec can enter spec_pr_open.
After the PR is created, update the active goal metadata:
metadata:
workflow_stage: spec_pr_open
spec_path: <spec-path>
handoff_path: <handoff-path>
spec_pr_url: <url>
spec_pr_number: <number>
Print the stop message described in checklist step 12. Do NOT invoke plan-writing or any other skill.
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 fleron/claude-plugins --plugin development-flow