Get the FREE Ultimate OpenClaw Setup Guide →

brainstorm

Scanned
npx machina-cli add skill georgekhananaev/claude-skills-vault/brainstorm --openclaw
Files (1)
SKILL.md
6.3 KB

Brainstorm

Transform ideas into fully-formed designs and specs through natural collaborative dialogue.

When to Use

  • User has an idea that needs refinement ("I want to add...")
  • Feature requires design exploration before implementation
  • Multiple valid approaches exist and trade-offs need evaluation
  • Requirements are unclear or partially defined
  • User explicitly asks to brainstorm, design, or spec out a feature

The Process

Phase 1: Context Gathering

Before asking questions, understand the current state:

1. Check project structure (Glob key directories)
2. Review recent commits (git log --oneline -10)
3. Read relevant existing code/docs
4. Identify patterns and conventions already in use

Phase 2: Idea Refinement

Core Principle: One question at a time.

Ask questions to understand the idea. Prefer multiple-choice when possible:

Use AskUserQuestion with:
- 2-4 options per question
- Clear, mutually exclusive choices
- Your recommended option first (with reasoning)

Question Categories:

CategoryExample Questions
PurposeWhat problem does this solve? Who benefits?
ConstraintsMust integrate with X? Budget/time limits?
SuccessHow do we know it worked? Key metrics?
ScopeWhat's explicitly NOT included?
Prior ArtSeen similar elsewhere? What worked/didn't?

Exit Criteria: Stop asking when purpose, constraints, and success criteria are clear.

Phase 3: Approach Exploration

Present 2-3 approaches with trade-offs:

## Approach A: [Name] (Recommended)
- **Pros**: ...
- **Cons**: ...
- **Best when**: ...

## Approach B: [Name]
- **Pros**: ...
- **Cons**: ...
- **Best when**: ...

Lead with recommendation and explain why. Ask user to confirm or discuss.

Phase 4: Incremental Design Presentation

Once approach is selected, present the design in sections:

CRITICAL: Each section must be 200-300 words max.

After each section, ask:

"Does this section look right so far? Any adjustments needed?"

Section Order:

  1. Overview - Goal, scope, success metrics
  2. Architecture - Components, data flow, boundaries
  3. Data Model - Schema, relationships (if applicable)
  4. Error Handling - Failure modes, recovery strategies
  5. Testing Strategy - What to test, how to test

Only proceed to next section after user confirms current section.

Be flexible: If something doesn't make sense, go back and clarify. The process is not rigid.

Phase 5: Documentation

After all sections validated:

  1. Compile into single design document
  2. Use elements-of-style skill for clarity
  3. Write to docs/plans/YYYY-MM-DD-<topic>-design.md
  4. Commit the design document to git

Phase 6: Implementation Setup (Optional)

After documentation is complete, ask:

"Ready to set up for implementation?"

If yes:

  1. Use using-git-worktrees to create isolated workspace
  2. Use /plan-feature command to create detailed implementation plan with TDD tasks

Question Patterns

Good Questions (Multiple Choice)

AskUserQuestion:
  question: "How should we handle failed API calls?"
  options:
    - label: "Retry with backoff (Recommended)"
      description: "Automatic retry 3x with exponential backoff. Best for transient failures."
    - label: "Fail immediately"
      description: "Return error to user right away. Simpler but less resilient."
    - label: "Queue for later"
      description: "Store and retry in background. Good for non-critical operations."

Good Questions (Open-ended)

Use when options aren't clear-cut:

  • "What existing functionality should this integrate with?"
  • "Are there any similar features in other products you'd like to emulate?"
  • "What's the worst-case failure scenario we need to handle?"

YAGNI Ruthlessly

During design, actively remove unnecessary features:

Red FlagQuestion to Ask
"It might be useful to...""Do we need this for MVP?"
"We could also add...""Is this solving the stated problem?"
"Just in case...""What's the likelihood this is needed?"
"This would be nice...""Is this a requirement or a want?"

Default answer: Remove it. Can always add later.

Design Document Template

# Feature: [Name]
Date: YYYY-MM-DD

## 1. Overview
**Goal**: [One sentence]
**Success Metrics**: [How we measure success]
**In Scope**: [What we're building]
**Out of Scope**: [What we're NOT building]

## 2. Architecture
[Diagram or description of components]

### Data Flow
[Step-by-step flow]

## 3. Data Model (if applicable)
[Schema changes, relationships]

## 4. Error Handling
| Scenario | Response |
|----------|----------|
| ... | ... |

## 5. Testing Strategy
| Type | Coverage | Focus |
|------|----------|-------|
| Unit | ... | ... |
| Integration | ... | ... |
| E2E | ... | ... |

## 6. Open Questions
[Any unresolved decisions]

Anti-Patterns

Don'tDo Instead
Ask 5 questions at onceOne question per message
Present design all at once200-300 word sections, validate each
Skip context gatheringAlways check project state first
Present only one approachAlways show 2-3 with trade-offs
Assume requirementsAsk until crystal clear
Over-engineer MVPYAGNI - remove the unnecessary
Write design without validationGet user confirmation at each step

Execution Flow

CONTEXT → REFINE → EXPLORE → PRESENT → DOCUMENT → IMPLEMENT
   │         │         │         │          │          │
 Git/Files  1 Q at   2-3 opts  200-300   docs/plans/  git-worktrees
            a time   w/recs    sections  + commit     + /plan-feature

Integration

Pairs with:

  • gemini-cli - Get alternative perspectives during approach exploration (Phase 3)
  • elements-of-style - Apply when writing design documents (Phase 5)
  • using-git-worktrees - Create isolated workspace for implementation (Phase 6)
  • /plan-feature command - Create detailed TDD implementation plans (Phase 6)

Source

git clone https://github.com/georgekhananaev/claude-skills-vault/blob/main/.claude/skills/brainstorm/SKILL.mdView on GitHub

Overview

Turns vague ideas into fully formed designs and specs through structured dialogue. Ideal for brainstorming features, exploring implementation approaches, and designing system architecture. It uses incremental validation with 200-300 word sections to refine concepts step by step.

How This Skill Works

The process guides you through phases: context gathering, idea refinement, approach exploration, and incremental design presentation. It asks focused questions one at a time (often using multiple-choice options) and surfaces 2-3 design approaches with trade-offs, leading with a recommended option. Once an approach is chosen, it presents the design in 200-300 word sections, validating each before moving to the next.

When to Use It

  • User has an idea that needs refinement (e.g., 'I want to add...')
  • Feature requires design exploration before implementation
  • Multiple valid approaches exist and trade-offs need evaluation
  • Requirements are unclear or partially defined
  • User explicitly asks to brainstorm, design, or spec out a feature

Quick Start

  1. Step 1: Define the goal, scope, and any hard constraints for the brainstorming session
  2. Step 2: Proceed through Phase 1–2 (Context Gathering, Idea Refinement) with one-question-at-a-time interactions
  3. Step 3: Move to Phase 3–4 (Approach Exploration, Incremental Design Presentation) and validate each 200-300 word section before continuing

Best Practices

  • Start with a clear goal, scope, and any hard constraints before asking questions
  • Ask one focused question at a time, favoring 2-4 option multiple-choice questions
  • Lead with a recommended approach and explain the rationale behind it
  • Present design in 200-300 word chunks and validate before proceeding
  • Define exit criteria: purpose, constraints, and success criteria must be clear before finalizing

Example Use Cases

  • Brainstorming a feature to add a new user onboarding flow and evaluating UI vs. backend-first approaches
  • Exploring integration options for an external service and weighing latency, reliability, and cost trade-offs
  • Designing a microservices module and mapping data ownership, boundaries, and communication patterns
  • Refining a vague data model into a concrete schema with entity relationships
  • Sketching a scalable architecture for a new analytics feature and validating against performance goals

Frequently Asked Questions

Add this skill to your agents
Sponsor this space

Reach thousands of developers