brainstorming
Skill17 starsChanged 4 months agoMITView on GitHub
Explore user intent, requirements and design before implementation through structured dialogue and design proposals. Use when asked to: create features, build components, add functionality, modify behavior, plan projects, or when user says 'help me design X', 'what should we build', 'let's brainstorm', or starts describing a new feature without a design.
190 other projects use a version of this, 99 of them edited.
Adopted by
Most recently taken up by
- DemonDamon/AgenticXedited, first seen Nov 9, 2026
- roundpilot/superpowers-antigravitytheir own version, first seen Nov 8, 2026
- ainurdev/mystical-assistantedited, first seen Nov 8, 2026
- REPOZY/superpowers-optimizedtheir own version, first seen Nov 8, 2026
- lingyired/status-triotheir own version, first seen Nov 8, 2026
- alunadev/ald-skillstheir own version, first seen Nov 8, 2026
Used with
Projects with it also use chinese-code-review, chinese-commit-conventions and 10 more.
Other files people use alongside this one.
Files found in the same public projects as a version of this one, more often than they turn up anywhere else. Each project counts once, large collections count for less, and this file's own repository is left out.
Leodorareluctant259Skillchinese-code-review
中文代码审查规范——在保持专业严谨的同时,用符合国内团队文化的方式给出有效反馈
Also in 8 projects that use this
Leodorareluctant259Skillchinese-commit-conventions
中文 Git 提交规范 — 适配国内团队的 commit message 规范和 changelog 自动化
Also in 8 projects that use this
ryanportfolioSkilladdskill
Create, import, update, or install repo or personal skills: runtime ownership, resources, discovery checks.
Also in 6 projects that use this
ryanportfolioSkillapply-firmware
Bring current folder (plain folder, existing repo, old or partial firmware copy) up to full Harness Firmware in place. Mirror external repo → adopt-repo.
Also in 6 projects that use this
- +2 more from Leodorareluctant259
- +6 more from ryanportfolio
Other versions190 projects use a version of this.
Word for word · 0
None found.
Edited · 99
- openai/plugins★ 7.8k13% same
- farm-fe/farm★ 5.6k25% same
- BetterTyped/react-zoom-pan-pinch★ 1.9k25% same
- revokslab/ShipFree★ 1.7k68% same
- pcvelz/superpowers★ 1.3k11% same
- DemonDamon/AgenticX★ 1k68% same
- coco-research/coco★ 79725% same
- AgentTeam-TaichuAI/ScienceClaw★ 67129% same
- shobcoder/shob★ 57525% same
- lnikell/loopndroll★ 56725% same
89 more not listed
Wrote their own version · 91
- obra/superpowers★ 314ksame name
- jnMetaCode/superpowers-zh★ 8.4ksame name
- vudovn/ag-kit★ 8.2ksame name
- vudovn/antigravity-kit★ 8.2ksame name
- JetBrains/thinkrail★ 7.9ksame name
- microsoft/FluidFramework★ 4.9ksame name
- lingyired/status-trio★ 1.8ksame name
- feiskyer/claude-code-settings★ 1.7ksame name
- GanyuanRan/Aegis★ 1.4ksame name
- sentient-agi/EvoSkill★ 1.2ksame name
81 more not listed
How matches are found. Word for word: the exact same text. Edited: shares passages with this file (“99% same” means 99% of its five-word phrases also appear here; 10% or more counts). Their own version: similar meaning, or, weakest, the same name. We can’t tell which project had it first. Projects are counted among the 200 most-starred candidates, and mentions are links to the repository we found, up to 50 per site, so both counts are a floor.
In this repository60 other files it gives its agents.
- AGENTS.mdAGENTS.md
- CLAUDE.mdCLAUDE.md
- agent-browserSkill
- agent-engineeringSkill
- app-marketing-copySkill
- ascii-pixel-artSkill
- autopredictSkill
- autoresearchSkill
- babysit-prSkill
- bird-fastSkill
- blockchain-auditorSkill
- ceo-reviewSkill
- ck-reviewSkill
- cloudflare-managerSkill
- codex-advisorSkill
- content-trend-researcherSkill
- continuous-learningSkill
- coreml-optimizerSkill
- cto-reviewSkill
- direct-mail-strategistSkill
- evangelion-designSkill
- executing-plansSkill
- freshdesk-apiSkill
- gemini-image-generatorSkill
- gemini-visualSkill
- github-actions-templatesSkill
- googleSkill
- gsplat-optimizerSkill
- hyperagentSkill
- idea-mdSkill
- imagegenSkill
- ios-app-testerSkill
- llm-advisorSkill
- llm-evaluationSkill
- macos-appsSkill
- markdown-fetchSkill
- mcp-builderSkill
- mcp-testerSkill
- nano-bananaSkill
- opensea-apiSkill
- paperclipSkill
- playdate-devSkill
- poke-assistantSkill
- poplar-direct-mailSkill
- practical-typographySkill
- prompt-factorySkill
- qmdSkill
- scientific-critical-thinkingSkill
- security-best-practicesSkill
- security-threat-modelSkill
- seo-optimizerSkill
- shadertoySkill
- skill-finderSkill
- skimmableSkill
- subway-infoSkill
- systematic-debuggingSkill
- tui-designerSkill
- ui-designSkill
- video-editorSkill
- writing-plansSkill
The file
Show its rules and text
We split this skill into the rules it gives an agent
32 rules. 0 are common, 30 are distinctive, and 2 are very specific to this project.
0
Common
Most of the 170 edited versions we read keep these.
30
Distinctive
This author's own choices. Worth a look.
2
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Distinctive: line 12
Start by understanding the current project context, then ask questions one at a time to refine the idea.
- Distinctive: line 66
Check out the current project state first (files, docs, recent commits)
- Distinctive: line 67
Ask questions one at a time to refine the idea
- Distinctive: line 68
Prefer multiple choice questions when possible, but open-ended is fine too
- Distinctive: line 69
Only one question per message - if a topic needs more exploration, break it into multiple questions
- Distinctive: line 80
Ask after each section whether it looks right so far
- Very specific: line 87
Write the validated design to docs/plans/YYYY-MM-DD-<topic>-design.md (create the docs/plans/ directory if it doesn't exist: mkdir -p …
- Distinctive: line 89
Commit the design document to git
- Distinctive: line 93
Do NOT invoke any other skill.
- Distinctive: line 97
One question at a time: - Don't overwhelm with multiple questions
- Distinctive: line 99
YAGNI ruthlessly: - Remove unnecessary features from all designs
- Distinctive: line 100
Explore alternatives: - Always propose 2-3 approaches before settling
- Distinctive: line 111
Check current theme implementation
- Distinctive: line 112
Ask: "Should dark mode be automatic (system preference), manual toggle, or both?"
- Very specific: line 116
Write design doc to docs/plans/YYYY-MM-DD-dark-mode-design.md
- Distinctive: line 126
Ask: "What formats should it support?
- Distinctive: line 127
Ask: "Should it validate or just format?"
- Distinctive: line 131
Write brief design doc
- Distinctive: line 142
Ask: "What's driving this?
- Distinctive: line 143
Ask: "Is this a gradual migration or big-bang?"
- Distinctive: line 147
Write comprehensive design doc
- Distinctive: line 164
If user still insists, present a minimal design: "Here's what I'm planning to build..."
- Distinctive: line 174
Keep design focused on: architecture, components, data flow, trade-offs
- Distinctive: line 176
If you catch yourself writing "Step 1: Create file X", stop and move to planning phase
- Distinctive: line 180
Symptoms: After starting work, user requests different behavior or approach
- Distinctive: line 187
Ask clarifying questions about the new requirements
- Distinctive: line 190
Update design doc with new decisions
- Distinctive: line 202
If still stuck, propose time-boxing: "Let's go with Option A and revisit if it doesn't work"
- Distinctive: line 212
How to avoid it: Treat simplicity as a reason to make brainstorming *faster*, not to skip it.
- Distinctive: line 220
How to avoid it: Wait for explicit approval language ("Looks good," "Let's go with that," "Ship it") before invoking writing-plans.
- Distinctive: line 224
What happens: After design approval, you're tempted to jump straight to frontend-design, mcp-builder, or another implementation skill …
- Distinctive: line 228
How to avoid it: Always invoke writing-plans as the bridge between brainstorming and implementation.
“Common” is measured: kept by at least 6 in 10 of the 170 edited versions of this file we could read. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
Brainstorming Ideas Into Designs
Overview
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.
Why Design-First?
Presenting a design before implementation prevents several costly failure modes:
- Misaligned assumptions — Coding toward the wrong goal is expensive to unwind
- Scope creep — Design clarifies boundaries; implementation without it invites feature bloat
- Architecture rework — Early code often creates structural debt that compounds
- Wasted specialization — Implementation skills are powerful but wasteful without clear direction
This applies to every project, including simple ones. A todo list, single-function utility, or config change can all ship the wrong thing. The design can be concise for simple projects (a few sentences), but it should exist and be approved before implementation begins.
Anti-Pattern: "This Is Too Simple To Need A Design"
See Common Pitfall 1 below for the detailed failure mode and prevention steps.
Workflow
Work through these phases systematically. Each step builds on the previous one:
- Explore project context — check files, docs, recent commits to ground the conversation in reality
- Ask clarifying questions — one at a time, understand purpose/constraints/success criteria
- Propose 2-3 approaches — with trade-offs and your recommendation to show you've considered alternatives
- Present design — in sections scaled to their complexity, get user approval after each section
- Write design doc — save to
docs/plans/YYYY-MM-DD-<topic>-design.mdand commit to preserve decisions - Transition to implementation — invoke writing-plans skill to create the detailed implementation plan
Process Flow
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];
"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 design doc" [label="yes"];
"Write design doc" -> "Invoke writing-plans skill";
}The next step is invoking writing-plans to move from design to detailed planning. Other implementation skills (frontend-design, mcp-builder, etc.) come after the plan is written. This sequencing ensures the implementation plan itself has been validated and can guide the work effectively.
The Process
Understanding the idea:
- Check out the current project state first (files, docs, recent commits)
- Ask questions one at a time to refine the idea
- Prefer multiple choice questions when possible, but open-ended is fine too
- Only one question per message - if a topic needs more exploration, break it into multiple questions
- Focus on understanding: purpose, constraints, success criteria
Exploring approaches:
- Propose 2-3 different approaches with trade-offs
- Present options conversationally with your recommendation and reasoning
- Lead with your recommended option and explain why
Presenting the design:
- Once you believe you understand what you're building, present the design
- Scale each section to its complexity: a few sentences if straightforward, up to 200-300 words if nuanced
- Ask after each section whether it looks right so far
- Cover: architecture, components, data flow, error handling, testing
- Be ready to go back and clarify if something doesn't make sense
After the Design
Documentation:
- Write the validated design to
docs/plans/YYYY-MM-DD-<topic>-design.md(create thedocs/plans/directory if it doesn't exist:mkdir -p docs/plans) - Commit the design document to git
Implementation:
- Invoke the writing-plans skill to create a detailed implementation plan
- Do NOT invoke any other skill. writing-plans is the next step.
Key Principles
- One question at a time - Don't overwhelm with multiple questions
- Multiple choice preferred - Easier to answer than open-ended when possible
- YAGNI ruthlessly - Remove unnecessary features from all designs
- Explore alternatives - Always propose 2-3 approaches before settling
- Incremental validation - Present design, get approval before moving on
- Be flexible - Go back and clarify when something doesn't make sense
Examples
Example 1: New Feature Request
User: "Let's add dark mode to the app"
Brainstorming workflow:
- Check current theme implementation
- Ask: "Should dark mode be automatic (system preference), manual toggle, or both?"
- Propose 3 approaches: CSS variables, Tailwind dark: classes, or theme provider
- Present design sections: color palette, component updates, storage strategy
- Get approval on each section
- Write design doc to
docs/plans/YYYY-MM-DD-dark-mode-design.md - Invoke writing-plans skill
Expected output: Validated design document + transition to planning
Example 2: Utility Function
User: "I need a function to format phone numbers"
Brainstorming workflow:
- Ask: "What formats should it support? (US only, international, etc.)"
- Ask: "Should it validate or just format?"
- Propose approaches: regex-based, library (libphonenumber), or simple formatter
- Present design: function signature, edge cases, error handling
- Get approval
- Write brief design doc
- Invoke writing-plans
Expected output: Even "simple" utilities get a design first
Example 3: Architectural Change
User: "We should migrate from REST to GraphQL"
Brainstorming workflow:
- Review current API structure and client usage
- Ask: "What's driving this? Performance, developer experience, or specific features?"
- Ask: "Is this a gradual migration or big-bang?"
- Propose 3 approaches: parallel APIs, GraphQL wrapper over REST, full rewrite
- Present design: schema design, migration strategy, backward compatibility
- Iteratively present sections, getting approval
- Write comprehensive design doc
- Invoke writing-plans
Expected output: Multi-phase design with migration strategy
Troubleshooting
Issue: User Keeps Asking "Just Build It"
Symptoms: User wants to skip brainstorming and go straight to code
Cause: Perceives design phase as overhead for "simple" tasks
Solution:
- Acknowledge the urgency: "I understand you want to move fast"
- Explain the risk: "Without design, we might build the wrong thing"
- Propose time-boxed design: "Let me ask 2 quick questions to confirm the approach"
- If user still insists, present a minimal design: "Here's what I'm planning to build..."
- Get explicit approval before proceeding
Issue: Design Becomes Implementation Plan
Symptoms: Design document includes code snippets, file structures, or step-by-step instructions
Cause: Confusing design (what/why) with planning (how/when)
Solution:
- Keep design focused on: architecture, components, data flow, trade-offs
- Defer implementation details to writing-plans skill
- If you catch yourself writing "Step 1: Create file X", stop and move to planning phase
Issue: User Changes Mind Mid-Implementation
Symptoms: After starting work, user requests different behavior or approach
Cause: Design wasn't concrete enough or assumptions weren't validated
Solution:
- Stop implementation immediately
- Return to brainstorming mode
- Ask clarifying questions about the new requirements
- Present revised design
- Get explicit approval before resuming implementation
- Update design doc with new decisions
Issue: Stuck in Endless Design Iteration
Symptoms: User keeps asking for more options or isn't satisfied with any design
Cause: Unclear success criteria or user isn't sure what they want
Solution:
- Step back and ask: "What would the ideal outcome look like?"
- Propose a minimal viable version: "What's the smallest thing we could build that would be useful?"
- Suggest prototyping: "Should we build a quick prototype to explore this?"
- If still stuck, propose time-boxing: "Let's go with Option A and revisit if it doesn't work"
Common Pitfalls
1. Skipping Brainstorming for "Simple" Tasks
What happens: You recognize a task as straightforward (single component, small utility, config change) and proceed directly to implementation, planning to sort out details while coding.
Why it backfires: "Simple" tasks are where assumptions are most dangerous because they feel obvious. You code one behavior, the user expected another, and by the time you learn this the scaffolding is already in place and needs rework.
How to avoid it: Treat simplicity as a reason to make brainstorming faster, not to skip it. A 30-second conversation ("This is a single-file utility that does X, right?") prevents a 30-minute refactor. Even explicit agreement on what seems obvious is valuable.
2. Proceeding to Code Before Explicit User Approval
What happens: You present a design, the user asks a clarifying question, and you interpret that as mild interest and start writing code while "thinking about their feedback."
Why it backfires: The user is still evaluating. Code written before approval is often code that needs rewriting. You've signaled that you're moving forward when the design isn't locked down.
How to avoid it: Wait for explicit approval language ("Looks good," "Let's go with that," "Ship it") before invoking writing-plans. A single clarifying question means the design isn't final — revise and re-present.
3. Invoking Implementation Skills Directly Instead of Writing Plans
What happens: After design approval, you're tempted to jump straight to frontend-design, mcp-builder, or another implementation skill rather than invoke writing-plans first.
Why it backfires: Implementation skills are powerful but unstructured. They work best when given a detailed plan that specifies scope, acceptance criteria, and technical decisions. Skipping the plan means the skill has to reinvent it, leading to inefficient work and potential scope creep.
How to avoid it: Always invoke writing-plans as the bridge between brainstorming and implementation. Let it formalize the decisions from brainstorming into a concrete plan that implementation skills can follow.
4. Designs That Are Too Abstract to Implement
What happens: You present a design that's philosophically sound but lacks concrete details — "We'll have a responsive grid that shows items" without saying how many columns, what breakpoints, or how filtering works.
Why it backfires: Implementation starts with questions because the design doesn't answer them. You end up in a loop where the implementer has to guess at details, implement them wrong, and you have to revise.
How to avoid it: Make designs concrete enough that an implementer can start work without opening the design doc and asking questions. Include examples, specific numbers, edge cases, and trade-off decisions. If a detail feels unclear to you, it'll be unclear during implementation.
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
No reviews yet
People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.
- It worked
- Partly
- It didn't
Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

