From ccu
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
/ccu: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.
Do NOT invoke any implementation skill, write any code, scaffold any project, or take any implementation action. This skill's ONLY output is a design document. 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/plans/YYYY-MM-DD-<topic>-design.md and commitdigraph brainstorming {
"Read project docs" [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=doublecircle];
"Offer planning?" [shape=diamond];
"Invoke planning skill" [shape=box, style=dashed];
"Read project docs" -> "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" -> "Offer planning?";
"Offer planning?" -> "Invoke planning skill" [label="user says yes"];
}
The terminal state is writing the design doc. After committing the design doc, ask the user if they'd like to invoke the planning skill to decompose the design into Beads. Do NOT automatically invoke any implementation or planning skill — only proceed if the user explicitly opts in.
Before asking any questions or proposing anything, you MUST thoroughly read the project's foundational documents. This is non-negotiable — you cannot brainstorm effectively without understanding the project's identity, conventions, and constraints.
Required reads (in order, skip if file doesn't exist):
README.md — project purpose, tech stack, how it worksCLAUDE.md — AI agent instructions, coding conventions, project-specific rulesAGENTS.md — multi-agent coordination patterns, if applicabledocs/ directory — scan for existing design docs, architecture notes, ADRspackage.json / Cargo.toml / pyproject.toml — dependencies, scripts, project metadatagit log --oneline -20) — what's been happening latelyWhy this matters: Without reading these docs, you will propose designs that contradict existing conventions, duplicate existing functionality, or ignore constraints the project already established. The user should not have to re-explain what's already documented.
After reading, summarize what you learned in 2-3 sentences before moving on. This confirms your understanding and gives the user a chance to correct any misinterpretation.
Understanding the idea:
Exploring approaches:
Presenting the design:
Documentation (required):
docs/plans/YYYY-MM-DD-<topic>-design.mdPlanning (optional — user must opt in):
npx claudepluginhub trungtnm/claude-code-utils --plugin ccuCreates bite-sized, testable implementation plans from specs or requirements, with file structure and task decomposition. Activates before coding multi-step tasks.