Claude
Skills
Sign in
โ† Back

project-brainstorming

Included with Lifetime
$97 forever

Guides project ideation via Socratic questioning to produce a validated brief. Use before specification when requirements are unclear.

workflowbrainstormingideationplanningrequirementssocratic-method

What this skill does

## When To Use

- Starting a new project without clear requirements
- Exploring problem space before specification
- Need to compare multiple approaches systematically
- Validating project feasibility and scope
- Documenting decision rationale for stakeholders
- Need to clarify the core problem being solved

## When NOT To Use

- Requirements and specification already exist (use `Skill(attune:project-planning)` instead)
- Refining existing specs (use `Skill(attune:project-specification)` instead)
- Project scope is well-defined (jump to `/attune:project-init`)
- Mid-project pivots (use `Skill(attune:war-room)` for strategic decisions)

## Integration

**With superpowers**:
- Delegates to `Skill(superpowers:brainstorming)` for Socratic method
- Augments with project-specific patterns
- Uses project brainstorm templates

**Without superpowers**:
- Standalone questioning framework
- Project-focused ideation patterns
- Structured output templates

**War Room Integration (REQUIRED)**:
- After Phase 3 (Approach Generation), automatically invokes `Skill(attune:war-room)`
- All brainstorming context passed to War Room for expert deliberation
- War Room provides multi-LLM pressure testing and synthesis
- Only bypassed for Type 2 decisions (RS โ‰ค 0.40) with explicit user confirmation

## Brainstorming Framework

### Phase 1: Problem Definition

**Socratic Questions**:
1. What problem are you solving?
2. Who experiences this problem?
3. What makes this problem worth solving now?
4. What happens if this problem isn't solved?
5. What existing solutions have been tried?

**Output**: Problem statement in docs/project-brief.md

**Template**:
```markdown
## Problem Statement

**Who**: [Target users/stakeholders]
**What**: [The problem they face]
**Where**: [Context where problem occurs]
**When**: [Frequency/timing of problem]
**Why**: [Impact of the problem]
**Current State**: [Existing solutions and limitations]
```
**Verification:** Run the command with `--help` flag to verify availability.

### Phase 2: Constraint Discovery

**Questions**:
1. What are non-negotiable technical constraints?
2. What are resource constraints (time, budget, team)?
3. What integration points are required?
4. What compliance/regulatory requirements apply?
5. What are success criteria and failure modes?

**Output**: Constraints matrix

**Template**:
```markdown
## Constraints

### Technical
- [Constraint 1 with rationale]
- [Constraint 2 with rationale]

### Resources
- **Timeline**: [Duration with milestones]
- **Team**: [Size and skills]
- **Budget**: [If applicable]

### Integration
- [Required system 1]
- [Required system 2]

### Compliance
- [Requirement 1]
- [Requirement 2]

### Success Criteria
- [ ] [Measurable criterion 1]
- [ ] [Measurable criterion 2]
```
**Verification:** Run the command with `--help` flag to verify availability.

### Phase 3: Approach Generation

**Technique**: Generate 3-5 distinct approaches

**For each approach**:
- Clear description (1-2 sentences)
- Technology stack
- Pros (3-5 points)
- Cons (3-5 points)
- Risks (2-3 points)
- Estimated effort
- Trade-offs

**Template**:
```markdown
## Approach [N]: [Name]

**Description**: [Clear 1-2 sentence description]

**Stack**: [Technologies and tools]

**Pros**:
- [Advantage 1]
- [Advantage 2]
- [Advantage 3]

**Cons**:
- [Disadvantage 1]
- [Disadvantage 2]
- [Disadvantage 3]

**Risks**:
- [Risk 1 with likelihood]
- [Risk 2 with likelihood]

**Effort**: [S/M/L/XL or time estimate]

**Trade-offs**:
- [Trade-off 1 with mitigation]
- [Trade-off 2 with mitigation]
```
**Verification:** Run the command with `--help` flag to verify availability.


**Design for Isolation**:

When generating approaches, evaluate each against two
isolation tests:

1. **Comprehension test**: Can someone understand what
   each unit does without reading its internals? If a
   unit requires reading implementation details to
   understand its purpose, the boundary is wrong.
2. **Change test**: Can you change a unit's internals
   without breaking its consumers? If changing
   implementation details forces changes elsewhere,
   the interface is leaking.

**File size as design signal**: Files exceeding 500 lines
(Python/Go) or 300 lines (JavaScript/TypeScript) often
indicate a unit is doing too much. This is a design
smell, not just a style issue. When flagging large files,
suggest extracting specific concerns (e.g., "Extract
validation logic into a separate module to improve
testability").

**Verification:** Run the command with `--help` flag to verify availability.

### Phase 3.5: War Room Deliberation (REQUIRED)

**Automatic Trigger**: After generating approaches, MUST invoke `Skill(attune:war-room)` for expert deliberation

**When War Room is invoked**:
- All brainstorming context (problem, constraints, approaches) automatically passed to War Room
- Expert panel reviews, challenges, and pressures each approach
- Reversibility assessment conducted
- Multi-LLM deliberation identifies blind spots
- Supreme Commander provides synthesis with rationale

**Command**:
```bash
# Automatically invoked from brainstorm - DO NOT SKIP
/attune:war-room --from-brainstorm
```

**War Room Output**:
- Reversibility Score (RS) and decision type
- Red Team challenges for each approach
- Premortem analysis on selected approach
- Supreme Commander Decision document
- Implementation orders and watch points

**Bypass Conditions** (ONLY skip war room if ALL true):
- [ ] RS โ‰ค 0.40 (Type 2 decision - clearly reversible)
- [ ] Single obvious approach with no meaningful trade-offs
- [ ] Low complexity with well-documented pattern
- [ ] User explicitly declines after being shown RS assessment

**Proceed to Phase 4 only after War Room completes**

### Phase 4: Approach Comparison

**Comparison Matrix**:

| Criterion | Approach 1 | Approach 2 | Approach 3 | Approach 4 |
|-----------|------------|------------|------------|------------|
| Technical Fit | ๐ŸŸข High | ๐ŸŸก Medium | ๐ŸŸก Medium | ๐Ÿ”ด Low |
| Resource Efficiency | ๐ŸŸก Medium | ๐ŸŸข High | ๐Ÿ”ด Low | ๐ŸŸก Medium |
| Time to Value | ๐ŸŸข Fast | ๐ŸŸก Medium | ๐Ÿ”ด Slow | ๐ŸŸข Fast |
| Risk Level | ๐ŸŸก Medium | ๐ŸŸข Low | ๐Ÿ”ด High | ๐ŸŸก Medium |
| Maintainability | ๐ŸŸข High | ๐ŸŸก Medium | ๐ŸŸข High | ๐Ÿ”ด Low |

**Scoring**: ๐ŸŸข = Good, ๐ŸŸก = Acceptable, ๐Ÿ”ด = Concern

### Phase 5: Decision & Rationale

**Selection Criteria**:
1. Alignment with constraints (must satisfy all)
2. Risk vs. reward balance
3. Team capability and experience
4. Time to value
5. Long-term maintainability

**Template**:
```markdown
## Selected Approach: [Approach Name] โญ

### Rationale
[2-3 paragraphs explaining why this approach was selected]

Key decision factors:
- [Factor 1]
- [Factor 2]
- [Factor 3]

### Trade-offs Accepted
- **Trade-off 1**: [Description] โ†’ Mitigation: [Strategy]
- **Trade-off 2**: [Description] โ†’ Mitigation: [Strategy]

### Rejected Approaches
- **Approach X**: Rejected because [reason]
- **Approach Y**: Rejected because [reason]
```
**Verification:** Run the command with `--help` flag to verify availability.

### Phase 5.5: Record the Tradeoff (decision journal)

Persist the Phase 5 selection to `docs/tradeoffs.md` now, while the reasoning
is live. This is the entry that survives past the session: the decision, the
alternatives weighed, and what was given up. Draft and confirm:

- If leyline is installed, invoke `Skill(leyline:decision-journal)` and follow
  it to append a tradeoff entry. The Phase 5 fields map directly: Selected
  Approach to `decision`, the rationale to a Y-statement, Trade-offs Accepted
  to `consequences_negative`, and Rejected Approaches to `options`. Set
  `phase` to `brainstorm`. Show the drafted entry; append on user confirmation
  (status starts `proposed`).
- Fallback (leyline absent): append an entry to `docs/tradeoffs.md` by hand
  using the in-file ENTRY TEMPLATE; assign the next `TR-NNN` id and add an
  active-index row.

Skip only when there was genuinely one obvious approach with no meaningful
trade-off (the same cond

Related in workflow