brainstorming
Install this skill
npx skills add obra/superpowersWorks across Claude Code, Cursor, Codex, Copilot & Antigravity
The Brainstorming skill transforms vague concepts into structured technical designs through structured, iterative inquiry. Rather than generating a massive document immediately, it focuses on precise discovery, gathering context from the existing codebase before proposing distinct architectural approaches. It operates through a conversational feedback loop, presenting design segments for validation to ensure alignment before finalizing the architecture. By adhering to YAGNI principles and requiring explicit confirmation at each stage, the skill minimizes wasted effort and prevents scope creep. The final output is a formal specification document saved to the project repository, providing a clear roadmap for implementation. This approach ensures that every proposed component, data flow, and testing requirement is intentionally vetted against the project's specific constraints and objectives.
When to Use This Skill
- β’Defining the architecture for a new feature module
- β’Refactoring an existing component to address performance issues
- β’Evaluating different database schemas for a data-heavy application
- β’Planning the integration of a third-party API or service
How to Invoke This Skill
Example prompts that trigger this skill in Claude Code, Cursor, or Antigravity:
- βLet's brainstorm a design for a new user authentication system
- βHow should we architect the search functionality for this repo?
- βHelp me plan the data flow for the incoming webhook processor
- βI have an idea for a new module, let's work through the design
- βBrainstorm approaches for upgrading our current logging service
Pro Tips
- π‘**Be specific with initial prompts:** The clearer your starting idea, the more focused and relevant the agent's questions and design proposals will be.
- π‘**Engage iteratively:** Don't rush the process. Respond thoughtfully to each question and provide feedback on design sections to guide the agent effectively.
- π‘**Use it for discovery, not just validation:** Leverage the agent's ability to propose multiple approaches and trade-offs to uncover solutions you might not have considered.
What this skill does
- β’Context-aware project analysis using existing files and repository history
- β’Single-question refinement loops to clarify project goals and constraints
- β’Comparative design assessment offering multiple technical approaches
- β’Incremental validation of design segments to catch errors early
- β’Automated creation of timestamped design documentation files
When not to use it
- βPerforming simple bug fixes or minor code cleanup
- βMaking high-level business strategy decisions outside of code architecture
- βWriting code implementation without a predefined design plan
Example workflow
- Scan current project files and commit history for context
- Ask clarifying questions about project goals and success criteria
- Propose three distinct technical approaches with trade-offs
- Draft the design in 300-word sections with pause-and-validate prompts
- Write the finalized specification to docs/plans/ and commit to git
Prerequisites
- βExisting codebase or repository
- βBasic project requirements or rough idea
Pitfalls & limitations
- !Over-engineering if YAGNI principles are ignored
- !Getting stuck in iterative loops if questions are too vague
- !Lack of technical clarity if the initial context search is incomplete
FAQ
How it compares
Unlike a generic prompt that might output an entire design at once, this skill enforces a step-by-step validation process that prevents hallucinated or misaligned architectural choices.
π Full skill instructions β original source: obra/superpowers
## 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 in small sections (200-300 words), checking after each section whether it looks right so far.
## 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
- Break it into sections of 200-300 words
- 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- Use elements-of-style:writing-clearly-and-concisely skill if available
- Commit the design document to git
**Implementation (if continuing):**
- Ask: "Ready to set up for implementation?"
- Use superpowers:using-git-worktrees to create isolated workspace
- Use superpowers:writing-plans to create detailed implementation plan
## 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 in sections, validate each
- **Be flexible** - Go back and clarify when something doesn't make sense
How to Use This Skill Unit
Option A: Project-Specific (Recommended)
- Click "Download" above
- In your project, create the directory:
.agent/skills/brainstorming/ - Save the file as
SKILL.md - The agent will automatically discover the skill based on its description.
Option B: Global Installation (All Agents)
Save the file to these locations to make it available across all projects:
- Claude Code:
~/.claude/skills/obra/superpowers/brainstorming/SKILL.md - Cursor:
~/.cursor/skills/obra/superpowers/brainstorming/SKILL.md - Antigravity:
~/.gemini/antigravity/skills/obra/superpowers/brainstorming/SKILL.md
π Install with CLI:npx skills add obra/superpowers