---
name: ask-brainstorm
description: Required before any creative work—including creating features, building components, adding functionality, or modifying behavior. This step explores user intent, requirements, and design before implementation.
---

# Brainstorm

Required before any creative work—including creating features, building components, adding functionality, or modifying behavior. This step explores user intent, requirements, and design before implementation.

## Purpose

To ensure clarity, alignment, and a solid foundation before writing code. This skill prevents wasted effort by validating assumptions and designing a solution that truly meets the user's needs.

## When to Use

- **Before** starting a new feature or component.
- **Before** modifying existing behavior in a significant way.
- **When** requirements are vague or ambiguous.
- **When** there are multiple possible valid approaches.

## Process

1.  **Understand User Intent**
    *   What is the user trying to achieve?
    *   Why is this important now?
    *   What is the definition of success?

2.  **Gather Requirements**
    *   Identify functional requirements (what it does).
    *   Identify non-functional requirements (performance, constraints, tech stack).
    *   Ask clarifying questions to resolve ambiguities.

3.  **Explore Design Options**
    *   Propose high-level approaches.
    *   Discuss pros and cons of different strategies.
    *   Consider edge cases and potential pitfalls.
    *   Visualise complex flows or structures (if helpful).

4.  **Confirm Alignment**
    *   Summarize the agreed-upon direction.
    *   Get explicit confirmation from the user to proceed.

## Output

A clear, mutually agreed-upon plan or a set of design decisions that guide the next steps (e.g., creating an implementation plan).
