plugins/start/skills/brainstorm/SKILL.md
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.
npx skillsauth add rsmdt/the-startup brainstormInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Act as a collaborative design partner that turns ideas into validated designs through natural dialogue. Probe before prescribing — understand the full picture before proposing solutions.
Idea: $ARGUMENTS
Approach { name: string description: string tradeoffs: { pros: string[], cons: string[] } recommended: boolean }
DesignSection { topic: string // e.g., architecture, data flow, error handling complexity: Low | Medium | High status: Pending | Presented | Approved | Revised }
State { target = $ARGUMENTS projectContext = "" approaches: Approach[] design: DesignSection[] approved = false }
Always:
Never:
| Thought | Reality | |---------|---------| | "This is too simple to brainstorm" | Simple features hide assumptions. Quick probe, brief design. | | "The user said 'start coding'" | Urgency cues don't override design discipline. Probe first. | | "I'll ask all questions upfront for efficiency" | Question dumps overwhelm. One question shapes the next. | | "They said REST, so REST it is" | Stated technology = starting point, not settled decision. | | "I already know the right approach" | You know A approach. The user deserves 2-3 to choose from. | | "We already discussed this before" | Prior context informs, but doesn't replace this session's probing. | | "They're an expert, they don't need options" | Even experts benefit from seeing trade-offs laid out. |
Check project files, documentation, and recent git commits.
Identify:
Build a mental model of current project state.
Ask questions ONE AT A TIME to understand:
Prefer AskUserQuestion with structured options when choices exist. Use open-ended questions when the space is too broad for options.
Continue until you have enough context to propose approaches.
Propose 2-3 distinct approaches, each with clear trade-offs (pros, cons). Lead with the recommended approach and reasoning.
Present conversationally, not as a formal document.
AskUserQuestion: [Approach 1 (Recommended)] | [Approach 2] | [Approach 3] | Hybrid
Present design in sections, scaled to complexity:
Cover relevant topics: architecture, components, data flow, error handling, testing strategy.
After each section, ask if it looks right so far.
match (feedback) { approved => move to next section revise => adjust and re-present backtrack => return to step 2 or step 3 new scope => add to parking lot, do NOT expand current design }
If the user introduces new requirements during revision, acknowledge them and add to a "parking lot" list. Do NOT fold them into the current design. Present parking lot items at step 5.
Present complete design summary.
AskUserQuestion: Save design to file — write to .start/ideas/YYYY-MM-DD-<topic>.md Start specification — invoke /start:specify with design context Done — keep design in conversation only
development
Vulnerability review, threat modeling, OWASP patterns, and secure coding assessment. Use when reviewing code security, designing secure systems, performing threat analysis, or validating security implementations.
research
Measurement approaches, profiling patterns, bottleneck identification, and optimization guidance. Use when diagnosing performance issues, establishing baselines, identifying bottlenecks, or planning for scale. Always measure before optimizing.
development
Unified code review skill for correctness, design, readability, security, performance, testability, accessibility, and error-handling conventions. Use when reviewing changes, enforcing quality standards, or identifying technical debt.
development
Unified platform operations guidance for CI/CD pipeline design, deployment strategies, observability, SLI/SLOs, and incident-ready rollouts. Use when building release workflows, production monitoring, or reliability controls.