Brainstorm
Diverge, then converge, then hand the winner to sw:increment. This never replaces
the spec — it decides which thing to spec.
Depth
| Depth |
Options |
Output |
quick (default for a narrow question) |
3 |
a table + a pick, in the conversation |
standard |
4–5 |
table + trade-offs + reports/brainstorm.md if an increment exists |
deep |
5–7, incl. one "do nothing" and one contrarian |
written doc + rejected alternatives + risks |
Steps
- Frame. One sentence: the decision to be made, and what would make an answer good.
Write down 3–5 criteria up front (cost, time-to-ship, blast radius, reversibility,
who maintains it). Choosing criteria after seeing the options is how bias sneaks in.
- Diverge. Generate the options before judging any of them. Force variety:
- the obvious one (do the thing directly);
- the cheap one (what buys 80% for 20%);
- the buy-instead-of-build one;
- the do-nothing / defer one, with what it costs;
- one that inverts an assumption everyone is making.
Name each option in 3–6 words.
- Converge. One table: option × criteria, with a one-line "kills it if" per option.
Then a short paragraph per surviving option: how it works, what it costs, what breaks.
- Pick. State the recommendation, the runner-up, and the one fact that would flip
the decision. If the honest answer is "we need data first", say that and name the
experiment.
- Hand off.
sw:increment "<the picked option>". Paste the rejected alternatives into
the new spec's Approach section — that is where they earn their keep.
Rules
- Never grade an option while still generating options.
- Every option gets the same amount of scrutiny; do not build a straw man to justify the favourite.
- Tables and short paragraphs, not essays.
- Persist the doc only when there is an increment to hold it
(
.specweave/increments/<id>/reports/brainstorm.md); otherwise keep it in the conversation.
- If the user already knows what they want, skip to
sw:increment and say why.
Multi-perspective variant
For a genuinely contested decision, run three lenses over the same option set — advocate
(strongest case for), critic (how each fails in production), pragmatist (what ships this
week) — and merge. In Claude Code these can be parallel subagents (sw:team in brainstorm
mode); in other tools, do the three passes in sequence and label them.
Resources
1---2name: brainstorm3description: Expand the solution space before committing - framed options compared on stated criteria, ending in a pick. Use when saying "brainstorm", "ideate", or "what are our options".4---56# Brainstorm78Diverge, then converge, then hand the winner to `sw:increment`. This never replaces9the spec — it decides *which* thing to spec.1011## Depth1213| Depth | Options | Output |14|---|---|---|15| `quick` (default for a narrow question) | 3 | a table + a pick, in the conversation |16| `standard` | 4–5 | table + trade-offs + `reports/brainstorm.md` if an increment exists |17| `deep` | 5–7, incl. one "do nothing" and one contrarian | written doc + rejected alternatives + risks |1819## Steps20211. **Frame.** One sentence: the decision to be made, and what would make an answer good.22 Write down 3–5 **criteria** up front (cost, time-to-ship, blast radius, reversibility,23 who maintains it). Choosing criteria after seeing the options is how bias sneaks in.242. **Diverge.** Generate the options *before* judging any of them. Force variety:25 - the obvious one (do the thing directly);26 - the cheap one (what buys 80% for 20%);27 - the buy-instead-of-build one;28 - the do-nothing / defer one, with what it costs;29 - one that inverts an assumption everyone is making.30 Name each option in 3–6 words.313. **Converge.** One table: option × criteria, with a one-line "kills it if" per option.32 Then a short paragraph per surviving option: how it works, what it costs, what breaks.334. **Pick.** State the recommendation, the runner-up, and the one fact that would flip34 the decision. If the honest answer is "we need data first", say that and name the35 experiment.365. **Hand off.** `sw:increment "<the picked option>"`. Paste the rejected alternatives into37 the new spec's **Approach** section — that is where they earn their keep.3839## Rules4041- Never grade an option while still generating options.42- Every option gets the same amount of scrutiny; do not build a straw man to justify the favourite.43- Tables and short paragraphs, not essays.44- Persist the doc only when there is an increment to hold it45 (`.specweave/increments/<id>/reports/brainstorm.md`); otherwise keep it in the conversation.46- If the user already knows what they want, skip to `sw:increment` and say why.4748## Multi-perspective variant4950For a genuinely contested decision, run three lenses over the same option set — advocate51(strongest case for), critic (how each fails in production), pragmatist (what ships this52week) — and merge. In Claude Code these can be parallel subagents (`sw:team` in brainstorm53mode); in other tools, do the three passes in sequence and label them.5455## Resources5657- [Official Documentation](https://verified-skill.com/docs/reference/skills#brainstorm)