π Full Skill Source β This is the complete, unedited SKILL.md file. Nothing is hidden or summarized.
Brainstorm Idea β Strategic Analysis Gate β
Understand deeply. Evaluate multi-dimensionally. Propose qualified options. Then β and only then β plan. This skill is the BRIDGE between an existing product and its next evolution.
When to Use β
ALWAYS when:
- User requests complex changes to an existing product
- Initiatives or enhancements that touch multiple system areas
- User jumps straight into hard/complex tasks without analysis
- Post
cm-project-bootstrapβ product exists, needs improvement - Feature requests that could be solved in fundamentally different ways
- "NΓͺn lΓ m gΓ¬ tiαΊΏp?" / "CαΊ£i tiαΊΏn gΓ¬?" / "Enhancement" / "Initiative"
Skip when:
- Simple bug fixes (use
cm-debugging) - New project from scratch (use
cm-project-bootstrap) - Task is already clearly defined and scoped (go to
cm-planning) - Quick one-off changes (< 30 min work)
Gate Function β
User requests complex task
β Is the problem clearly understood and qualified?
β NO β Run cm-brainstorm-idea FIRST
β YES β Go to cm-planning directlyWhen downstream skills detect an unqualified complex request, they should REDIRECT here:
cm-planning detects ambiguity β "ChΖ°a rΓ΅ vαΊ₯n Δα». ChαΊ‘y cm-brainstorm-idea trΖ°α»c."
cm-execution gets vague plan β "Plan thiαΊΏu context. Quay lαΊ‘i cm-brainstorm-idea."The Process β
Phase 1: DISCOVER (Diamond 1 β Diverge) β Scan wide, understand current state
Phase 2: DEFINE (Diamond 1 β Converge) β Qualify the REAL problem
Phase 3: DEVELOP (Diamond 2 β Diverge) β Generate 2-3 solution options
Phase 4: EVALUATE (Diamond 2 β Converge) β Score, compare, recommend
Phase 4.5: UI PREVIEW (Visual Validation) β See it before you build it
Phase 5: HANDOFF (Bridge to cm-planning) β Package for downstream skillsPhase 1: DISCOVER β Scan & Empathize β
Goal: Understand the current state of the product from all angles.
1a. Codebase Scan β
Read and map the existing system:
β
DO:
- Read AGENTS.md for project overview
- Scan project structure (list_dir)
- Read key config files (package.json, wrangler.toml, etc.)
- Identify tech stack, patterns, dependencies
- Check test coverage and existing quality
π OUTPUT: Codebase Summary
- Tech stack: [...]
- Architecture pattern: [...]
- Key dependencies: [...]
- Test coverage: [high/medium/low/none]
- Code health signals: [...]
- Corpus size: [total source files] src / [total doc files] docs
π SIZE CHECK (auto β triggers cm-deep-search):
IF docs/ > 50 files OR source > 200 files:
β Suggest: "Project nΓ y khΓ‘ lα»n. Xem cm-deep-search Δα» setup semantic search vα»i qmd."
β Non-blocking: continue Phase 1 regardless of user response1b. User Context Interview β
Ask targeted questions to understand intent:
π DISCOVERY QUESTIONS:
1. SαΊ£n phαΊ©m hiα»n tαΊ‘i phα»₯c vα»₯ ai? (Who are the users?)
2. Pain point lα»n nhαΊ₯t Δang gαΊ·p lΓ gΓ¬? (Biggest pain point?)
3. Mα»₯c tiΓͺu kinh doanh kαΊΏ tiαΊΏp? (Next business goal?)
4. CΓ³ constraint nΓ o vα» tech/budget/timeline khΓ΄ng? (Constraints?)
5. ΔΓ£ thα» giαΊ£i phΓ‘p nΓ o rα»i? (What's been tried?)1c. Multi-Dimensional Current State β
| Dimension | What to Assess | Sources |
|---|---|---|
| Tech | Code quality, scalability, tech debt, performance | Codebase scan, test results |
| Product | Feature completeness, user satisfaction, funnel gaps | User interview, analytics |
| Design | UX quality, accessibility, mobile readiness, design system | UI review, cm-ux-master |
| Business | Revenue impact, market position, competitive landscape | User interview, research |
Phase 2: DEFINE β Qualify the Problem β
Goal: Use 9 Windows to see the problem from all time Γ system perspectives, then converge on the REAL problem.
9 Windows Analysis (TRIZ) β
Map the situation across time and system levels:
βββββββββββββββββββ¬βββββββββββββββββββ¬βββββββββββββββββββ¬βββββββββββββββββββ
β β PAST β PRESENT β FUTURE β
βββββββββββββββββββΌβββββββββββββββββββΌβββββββββββββββββββΌβββββββββββββββββββ€
β SUPER-SYSTEM β Market/industry β Current market β Where market β
β (ecosystem) β was like this... β looks like... β is heading... β
βββββββββββββββββββΌβββββββββββββββββββΌβββββββββββββββββββΌβββββββββββββββββββ€
β SYSTEM β Product used to β Product now β Product should β
β (the product) β be like this... β does this... β become this... β
βββββββββββββββββββΌβββββββββββββββββββΌβββββββββββββββββββΌβββββββββββββββββββ€
β SUB-SYSTEM β Components were β Components now β Components need β
β (components) β built this way...β work this way... β to evolve to... β
βββββββββββββββββββ΄βββββββββββββββββββ΄βββββββββββββββββββ΄βββββββββββββββββββFill all 9 windows based on Phase 1 findings. This reveals:
- Evolution patterns (Past β Present trends)
- System-level tensions (Super-system demands vs Sub-system capabilities)
- Future opportunities (where convergence creates value)
Problem Qualification Statement β
After 9 Windows analysis, write a qualified problem statement:
## Qualified Problem
**For:** [user/customer segment]
**Who:** [current pain/need]
**The:** [product/feature] is a [category]
**That:** [key benefit/change needed]
**Unlike:** [current state / alternative]
**Our approach:** [high-level direction]
### Root Cause(s):
1. [Technical root cause]
2. [Product root cause]
3. [Design root cause]
### Impact if NOT addressed:
- [Business impact]
- [User impact]
- [Technical debt impact]Phase 3: DEVELOP β Generate Options β
Goal: Create 2-3 fundamentally different approaches. Not variations of one idea.
Design Thinking Ideation Rules β
β
DO:
- Generate at LEAST 2, at MOST 3 options
- Each option must be FUNDAMENTALLY different in approach
- Think from different perspectives: user-first, tech-first, business-first
- Consider both quick-win and long-term approaches
- Include rough effort estimation for each
β DON'T:
- Propose only 1 option (no choice = bad analysis)
- Propose 4+ options (decision paralysis)
- Make all options "the same idea with different UIs"
- Skip effort estimation
- Ignore existing constraints from Phase 1Option Template β
For each option, document:
### Option [A/B/C]: [Descriptive Name]
**Approach:** [1-2 sentence summary]
**Philosophy:** [User-first / Tech-first / Business-first / Balanced]
**What changes:**
- [Component 1]: [change description]
- [Component 2]: [change description]
**Effort:** [S/M/L/XL] (~[time estimate])
**Risk level:** [Low/Medium/High]
**Pros:**
- [Pro 1]
- [Pro 2]
**Cons:**
- [Con 1]
- [Con 2]
**Best when:** [scenario where this option shines]Phase 4: EVALUATE β Score & Recommend β
Goal: Compare options objectively across 4 dimensions. Make a clear recommendation.
Multi-Dimensional Scoring Matrix β
| Dimension | Weight | Option A | Option B | Option C |
|---|---|---|---|---|
| Tech (feasibility, maintainability, scalability) | 25% | ?/10 | ?/10 | ?/10 |
| Product (user value, feature completeness, PMF) | 30% | ?/10 | ?/10 | ?/10 |
| Design (UX quality, accessibility, polish) | 20% | ?/10 | ?/10 | ?/10 |
| Business (ROI, time-to-market, strategic fit) | 25% | ?/10 | ?/10 | ?/10 |
| Weighted Total | 100% | ?/10 | ?/10 | ?/10 |
Adjust weights based on project context. A consumer app might weight Design higher. A B2B SaaS might weight Business higher.
Recommendation Format β
## π― Recommendation
**Chα»n Option [X]: [Name]**
### TαΊ‘i sao chα»n Option X:
1. [Strongest reason β tied to qualified problem]
2. [Second reason β tied to constraint/context]
3. [Third reason β tied to future evolution]
### TαΊ‘i sao KHΓNG chα»n cΓ‘c option khΓ‘c:
- **Option [Y]:** [specific deal-breaker]
- **Option [Z]:** [specific deal-breaker]
### Quick-win suggestion:
NαΊΏu muα»n thαΊ₯y kαΊΏt quαΊ£ nhanh, cΓ³ thα» bαΊ―t ΔαΊ§u vα»i [subset of Option X]
trΖ°α»c khi triα»n khai toΓ n bα».Phase 4.5: UI PREVIEW β See It Before You Build It β
Goal: After recommending an option, offer the user a visual preview to validate the direction before investing in planning & coding.
When to Trigger β
After Phase 4 recommendation is clear, ALWAYS ask:
π¨ **Muα»n xem trΖ°α»c thiαΊΏt kαΊΏ khΓ΄ng?**
PhΖ°Ζ‘ng Γ‘n [X] ΔΓ£ Δược Δα» xuαΊ₯t. BαΊ‘n cΓ³ muα»n tαΊ‘o UI concept trΖ°α»c khi lΓͺn kαΊΏ hoαΊ‘ch chi tiαΊΏt?
1. β
**CΓ³** β TαΊ‘o preview nhanh Δα» hΓ¬nh dung rΓ΅ hΖ‘n
2. βοΈ **KhΓ΄ng** β Δi thαΊ³ng vΓ o planningSmart Tool Detection β
Auto-detect which design tool is available and best suited:
Check available MCP tools:
β Stitch MCP available? (create_project, generate_screen_from_text)
β Pencil MCP available? (batch_design, get_editor_state)
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β TOOL SELECTION MATRIX β
ββββββββββββββββ¬βββββββββββββββ¬ββββββββββββββββββββββββββββββββ€
β Stitch only β Pencil only β Both available β
ββββββββββββββββΌβββββββββββββββΌββββββββββββββββββββββββββββββββ€
β Use Stitch β Use Pencil β Ask user preference: β
β (quick β (detailed β - "Nhanh" β Stitch β
β concept) β control) β - "Kiα»m soΓ‘t" β Pencil β
β β β - Default: Stitch (faster) β
ββββββββββββββββ΄βββββββββββββββ΄ββββββββββββββββββββββββββββββββStitch path (fast concept generation):
- Best for: Quick visual validation, non-technical stakeholders
- Auto-creates project, generates screens from the recommended option
- Uses
cm-ui-previewStep 3 prompt enhancement pipeline
Pencil path (developer control):
- Best for: Devs who want pixel-level control, design system alignment
- Opens .pen editor, follows design guidelines for component layout
- Can export to code-ready assets
Execution Flow β
User says "CΓ³" (Yes to preview):
1. Detect available tools (Stitch / Pencil / both)
2. If both β ask preference or auto-select based on context
3. Delegate to cm-ui-preview with brainstorm context:
- Pass: qualified problem, recommended option, design constraints
- cm-ui-preview creates concept screens
4. User reviews preview:
β β
Confirm β Proceed to Phase 5 (Handoff) with visual reference
β βοΈ Edit β Iterate on preview
β β Change option β Go back to Phase 4, pick different option
User says "KhΓ΄ng" (Skip preview):
β Proceed directly to Phase 5 (Handoff)Context Passed to cm-ui-preview β
## Brainstorm Context for UI Preview
**Initiative:** [Name from Phase 2]
**Recommended Option:** [Option X summary]
**Target Users:** [From Phase 1 discovery]
**Design Constraints:** [From codebase scan β existing design system, tokens, etc.]
**Key Screens Needed:** [List from recommended option's "What changes"]
**Device Type:** [DESKTOP / MOBILE β from project context]Phase 5: HANDOFF β Package for Downstream β
Goal: Create a clean handoff document that
cm-planningcan use immediately.
Handoff Output: brainstorm-output.md β
Save to docs/brainstorm/ or project root:
# Brainstorm Output: [Initiative Name]
Generated by: cm-brainstorm-idea
Date: [date]
## Qualified Problem
[From Phase 2]
## 9 Windows Analysis
[Summary table from Phase 2]
## Options Evaluated
[Summary from Phase 3-4]
## Recommendation
[From Phase 4]
## Next Steps for cm-planning:
1. [Specific scope to plan]
2. [Key constraints to respect]
3. [Technical decisions already made]
4. [Open questions for implementation]
## Context for downstream skills:
- cm-planning: [what to focus the plan on]
- cm-tdd: [key areas that need test coverage]
- cm-ux-master: [design considerations]
- cm-execution: [suggested execution mode]Red Flags β STOP β
| Thought | Reality |
|---|---|
| "The user knows what they want, skip analysis" | Complex requests ALWAYS benefit from analysis |
| "Let me just start coding" | Code without analysis = rework later |
| "One option is obviously right" | If you can't articulate 2+ options, you haven't explored enough |
| "All options look the same" | Dig deeper β change the lens (user-first vs tech-first) |
| "This will take too long" | 30-60 min analysis saves 3-5 days of rework |
| "The 9 Windows are overkill" | They reveal blind spots you WILL miss otherwise |
Integration β
| Skill | Relationship |
|---|---|
cm-project-bootstrap | UPSTREAM: Product must exist before brainstorming improvements |
cm-ui-preview | USED IN Phase 4.5: Visual preview with Stitch or Pencil (auto-detected) |
cm-deep-search | TRIGGERED IN Phase 1a: Suggests qmd when project corpus exceeds thresholds |
cm-planning | DOWNSTREAM: Receives qualified output, writes implementation plan |
cm-execution | DOWNSTREAM: Executes the plan that originated from this analysis |
cm-ux-master | USED IN Phase 1 & 3: UX assessment and design ideation |
cm-debugging | REDIRECT: Simple bugs don't need brainstorming |
cro-methodology | COMPLEMENT: CRO analysis for conversion-specific improvements |
jobs-to-be-done | COMPLEMENT: JTBD research for user-need discovery |
Lifecycle Position β
cm-project-bootstrap β cm-brainstorm-idea β [UI Preview?] β cm-planning β cm-execution
(build) (analyze) (visualize) (plan) (implement)The Bottom Line β
Don't rush to solutions. Qualify the problem. Evaluate options. Recommend with evidence. Then β plan.