brainstorming
A mandatory design-first skill that guides agents through collaborative project scoping, requirements gathering, and spec creation before any implementation begins.
Introduction
The brainstorming skill is a critical architectural component of the Superpowers methodology, designed to prevent the common failure mode of premature implementation. By enforcing a strict design-first workflow, this skill ensures that all software development tasks—regardless of perceived complexity—undergo rigorous scrutiny, intent exploration, and design validation. It targets developers and automated coding agents who require a structured approach to bridge the gap between abstract requirements and executable implementation plans. Whether you are building a simple utility, a configuration change, or a complex system, this skill acts as a guardrail against unexamined assumptions and architectural debt. It facilitates a Socratic dialogue, requiring the agent to query the user, refine project context, and iteratively develop a formal specification that serves as the foundation for subsequent technical planning.
-
Facilitates systematic requirement gathering through conversational questioning and design exploration.
-
Enforces a mandatory hard-gate that prevents code execution or project scaffolding until design approval is secured.
-
Provides a structured template for design documentation, including architecture, component definition, data flow, and error handling.
-
Guides users through project decomposition, helping to break large or ambiguous ideas into manageable, independent sub-projects.
-
Integrates with visual companion tools to clarify design requirements for UI/UX-intensive tasks.
-
Maintains an audit trail by committing design documents in Markdown format to the project repository.
-
The skill mandates a specific sequence of operations: explore project context, conduct visual/design research, iterate on requirements, present options, and finalize documentation.
-
Always prioritize the recommendation of 2-3 design approaches with associated trade-offs, enabling informed user decision-making.
-
Utilize this skill for every task: a todo list or single-function utility is never exempt from the design process to ensure consistency and prevent regression.
-
The terminal state of this skill is the invocation of the writing-plans skill, ensuring a seamless transition from conceptual design to granular, actionable task planning.
-
Always adhere to YAGNI (You Aren't Gonna Need It) and DRY (Don't Repeat Yourself) principles during the design phase to minimize scope creep.
Repository Stats
- Stars
- 172,022
- Forks
- 15,174
- Open Issues
- 278
- Language
- Shell
- Default Branch
- main
- Sync Status
- Idle
- Last Synced
- Apr 29, 2026, 06:59 AM