chatwoot-develop/skills/brainstorming-ideas/SKILL.md
2026-01-19 19:26:23 -03:00

61 lines
2.0 KiB
Markdown

---
name: brainstorming-ideas
description: Explores user intent, requirements, and design before implementation. Use this before starting any creative work or new feature.
---
# Brainstorming Ideas Into Designs
## When to use this skill
- When starting a new feature or component.
- When requirements are vague or high-level.
- Before writing any code for complex tasks.
- To clarify user intent and design architecture.
## Workflow
- [ ] **Understand Context**: Read existing files, docs, and recent commits.
- [ ] **Iterative Questions**: Ask one question at a time to clarify requirements.
- [ ] **Explore Approaches**: Propose 2-3 different solutions with trade-offs.
- [ ] **Draft Design**: Present the design in small sections (200-300 words).
- [ ] **Validate**: Ask for confirmation after each section.
- [ ] **Finalize**: Commit the agreed design to `docs/plans/YYYY-MM-DD-<topic>-design.md`.
## Instructions
### 1. Understanding the Idea
- **Check context first:** Files, docs, recent commits.
- **Ask ONE question at a time:** Don't overwhelm.
- **Prefer multiple choice:** "Should we use A or B?" is better than "How should we do this?".
- **Focus on:** Purpose, limits, success criteria.
### 2. Exploring Approaches
- Always propose **2-3 options**.
- Explain trade-offs for each.
- State your **recommended option** clearly at the beginning.
### 3. Presenting the Design
- Break it down into **sections of 200-300 words**.
- **Pause** after each section to ask: _"Does this look right so far?"_
- Sections to cover:
- Architecture / Component Structure
- Data Flow
- Error Handling
- Testing Strategy
### 4. After the Design
- **Documentation:** Save the validated design to `docs/plans/YYYY-MM-DD-<topic>-design.md`.
- **Handoff:** Ask "Ready to set up for implementation?".
- **Next Step:** Suggest using the `planning-work` skill to create the implementation plan.
## Key Principles
- **One question at a time.**
- **YAGNI ruthlessly** (Remove unnecessary features).
- **Incremental validation.**
- **Be flexible:** Clarify if typically doesn't make sense.