From super-perception
Collaborative discovery before planning. Explore the problem space, evaluate approaches, surface past work, and produce a structured brainstorm document. Triggers: brainstorm, explore, discovery, ideate, think through, what should we build, explore approaches.
How this skill is triggered — by the user, by Claude, or both
Slash command
/super-perception:brainstormThis skill is limited to the following tools:
The summary Claude sees in its skill listing — used to decide when to auto-load this skill
Collaborative discovery before planning. Answers **WHAT** to build and **WHY** — precedes `/plan`, which answers **HOW**.
Collaborative discovery before planning. Answers WHAT to build and WHY — precedes /plan, which answers HOW.
This skill MAY: research (read-only), discuss, ask questions, write the brainstorm document. This skill MAY NOT: edit code, create files beyond the brainstorm document, run tests, deploy, implement anything.
NEVER write code during this skill. This is a discussion, not implementation.
| Shortcut | Why It Fails | The Cost |
|---|---|---|
| "Skip reframing — the user already knows what they want" | Users describe solutions, not problems. Without reframing, you build the wrong thing. | Days of rework when the real need surfaces |
| "Skip research — I'll brainstorm from scratch" | Reinventing what exists. The codebase has patterns, past brainstorms have context. | Wasted effort + inconsistency with existing decisions |
| "Keep exploring — we haven't found the perfect approach" | Diminishing returns. After 2-3 solid options, more exploration adds noise, not signal. | Analysis paralysis — nothing ships |
| "Let me just write some code to test this idea" | Brainstorming is for decisions, not prototypes. Code anchors you to an approach too early. | Premature commitment to the first thing that compiles |
Entry: User has a topic or problem area.
Not everything needs a brainstorm.
If requirements are already clear and specific: Use AskUserQuestion with:
question: "Your requirements seem clear enough for /plan. Brainstorm first, or go straight to planning?"
header: "Approach"
options:
multiSelect: false
If user selects Go to /plan → exit this skill, suggest /plan
If user selects Brainstorm first → continue to Phase 1
Brainstorm when:
Exit: Decision made — brainstorm or skip.
Entry: User confirmed brainstorming is needed.
This is the critical step. Before exploring solutions, question the problem.
Use AskUserQuestion to ask ONE question at a time. Do not dump a questionnaire. Start with:
Continue asking until the problem is clear. Prefer multiple-choice questions when natural options exist. Validate assumptions explicitly: "I'm assuming X — correct?"
Exit: Problem statement is clear and reframed. Both you and the user agree on what you're solving.
Before accepting the problem framing, apply Chain-of-Verification:
Don't challenge obvious framings just to seem thorough. Challenge when you have evidence or genuine uncertainty.
See ../../super-intelligence/knowledge/socratic-patterns.md for technique details.
Entry: Problem statement is clear (Phase 1 complete).
Check the project's CLAUDE.md for a "Toolkit Output Paths" table. Use those paths if present, otherwise use defaults.
Launch research agents in parallel:
Surface findings to the user:
>> Related brainstorm: docs/brainstorms/2026-02-15-notifications-brainstorm.md
>> Existing pattern: services/email-notifier/ (notification handling)
>> Past solution: docs/solutions/infrastructure/sse-auth-token-refresh.md
If no relevant findings: Say so. Don't invent relevance.
Exit: Findings presented. User has seen what exists before exploring approaches.
Entry: Research complete (Phase 2). User has context on what exists.
Through collaborative dialogue, explore 2-3 approaches. For each:
Use AskUserQuestion to ask one question at a time. Start broad (purpose, users), narrow to specifics (constraints, edge cases).
If any open questions emerge: You MUST ask the user about each one. Do not assume answers or defer them silently.
Exit when:
Once an approach is selected, run the Recursive Why loop before locking it in. This is mandatory — not optional.
The loop:
Extract assumptions — identify 3-5 things that must be true for this approach to work. These are often implicit: technical feasibility, team capability, data availability, user behavior, performance characteristics.
For each assumption, run the Recursive Why:
Assumption: "We need real-time updates"
→ Why? "Because users expect instant feedback"
→ Why do they expect that? "Because... actually, we haven't validated this. A 5-second poll might be fine."
→ STOP: Hit "I don't know" — this is an unverified assumption.
Classify what you find:
Surface to the user before moving to Phase 4:
Assumption audit for [chosen approach]:
✓ Bedrock: PostgreSQL can handle the query pattern (verified in similar feature X)
? Unverified: Users need real-time updates (no data — assumed)
✗ Weak: "We always use WebSockets for this" (habit, not requirement)
Use AskUserQuestion if any unverified or weak assumptions are found:
Depth: 2-3 levels of "why" per assumption. Stop at bedrock, not at a fixed number.
See ../../super-intelligence/knowledge/socratic-patterns.md for evidence grounding and discovery-patterns.md → "Recursive Why" for the loop technique.
Entry: Approach chosen (Phase 3 complete).
For each decision made during brainstorming, capture:
Also capture:
Entry: Decisions captured (Phase 4 complete).
Output path: {brainstorms_path}/YYYY-MM-DD-{kebab-topic}-brainstorm.md
(Default brainstorms_path: docs/brainstorms/)
Write the document with this structure:
---
title: "{Topic}"
type: brainstorm
date: YYYY-MM-DD
participants: [{who was involved}]
related:
- {links to related brainstorms, plans, solutions found in Phase 2}
---
# {Topic}
## Problem Statement
{The actual problem, reframed from Phase 1}
## Context
{Key findings from Phase 2 — what exists, what's been tried}
## Chosen Approach
{High-level description of the selected approach}
## Why This Approach
{Decision rationale — what it optimizes for, why alternatives were rejected}
## Key Design Decisions
### Q1: {Decision topic} — RESOLVED
**Decision:** {What was decided}
**Rationale:** {Why}
**Alternatives considered:** {What else was explored and why it was rejected}
## Open Questions
{Questions that need to be answered during planning or implementation}
## Out of Scope
{Things explicitly excluded from this work}
## Next Steps
- `/plan` to create an implementation plan from these decisions
Before writing, check if any decisions contradict past brainstorms surfaced in Phase 2. If a contradiction exists:
If a novel pattern was discovered during brainstorming (approach nobody's tried, new integration point, unexpected constraint), note it as a candidate for /compound in the Next Steps section.
Exit: Document written.
Entry: Document written (Phase 5 complete).
Use AskUserQuestion with:
If user selects "Keep exploring": Return to Phase 3 and continue asking questions one at a time. When satisfied, update the document and return to this handoff.
If user selects "Proceed to /plan": Suggest running /plan {brainstorm-path}.
If user selects "Done for now": Confirm the path.
Before delivering the brainstorm document, verify:
/plan can start from this document without asking "but what did you decide about X?"npx claudepluginhub aibilitycz/superpowered-toolkit --plugin super-perceptionCollaborative discovery before planning. Explore the problem space, evaluate approaches, surface past work, and produce a structured brainstorm document. Triggers: brainstorm, explore, discovery, ideate, think through, what should we build, explore approaches.
Guides structured brainstorming with research, codebase exploration, and cross-domain thinking. Activates on open-ended problems or brainstorming prompts.
Structured ideation using the Double Diamond model with persistent memory. Guides brainstorming for new features, architecture decisions, project inception, or design exploration.