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.
When & Why to Use This Skill
This Claude skill acts as a strategic design partner that bridges the gap between initial concepts and technical implementation. By enforcing a 'design-first' workflow, it helps developers explore user intent, evaluate architectural trade-offs, and create detailed specifications before writing a single line of code, significantly reducing technical debt and scope creep.
Use Cases
- Technical Specification Drafting: Transforming vague feature requests into structured designs covering architecture, data flow, and error handling.
- Architectural Trade-off Analysis: Proposing and comparing multiple technical approaches for a new system to identify the most efficient and scalable solution.
- Requirement Discovery: Using iterative, single-question dialogue to uncover hidden constraints and success criteria for complex software projects.
- Implementation Planning: Seamlessly converting finalized designs into actionable tasks and epics using the beads project management framework.
| 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." |
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 in small sections (200-300 words), checking after each section whether it looks right so far.
Prerequisites
REQUIRED: Verify beads is installed. If bd command not available, STOP and tell user to install beads.
The Process
Understanding the idea:
- Check out the current project state first (files, docs, recent commits)
- Check active beads:
bd listfor open tasks,bd list --type epicfor epics - 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
DO NOT write design documents to docs/plans/ - use beads instead.
Implementation (if continuing):
- Ask: "Ready to set up for implementation?"
- Use beadpowers:create-beads to create epic/tasks with the design
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