Loading...
Loading...
Internal skill. Use cc10x-router for all development tasks.
npx skill4agent add romiluz13/cc10x brainstormingNO DESIGN WITHOUT UNDERSTANDING PURPOSE AND CONSTRAINTS# Check for existing spec (permission-free)
Read(file_path="SPEC.md") # or spec.md if that doesn't exist# Check recent context (permission-free)
Bash(command="git log --oneline -10")
Bash(command="ls -la src/") # or relevant directoryAskUserQuestion"What problem does this solve for users?"
A. [Specific use case 1] B. [Specific use case 2] C. Something else (please describe)
"Who will use this feature?"
"How will we know this works well?"
"What limitations or requirements exist?" (Performance, security, compatibility, timeline)
"What's explicitly OUT of scope for this?"
## Approaches
### Option A: [Name] (Recommended)
**Approach**: [Brief description]
**Pros**: [Benefits]
**Cons**: [Drawbacks]
**Why recommended**: [Reasoning]
### Option B: [Name]
**Approach**: [Brief description]
**Pros**: [Benefits]
**Cons**: [Drawbacks]
### Option C: [Name]
**Approach**: [Brief description]
**Pros**: [Benefits]
**Cons**: [Drawbacks]
Which direction feels right?"Does this architecture make sense so far?"
"Do these components cover what you need?"
"Does this data flow work for your use case?"
"Are these error cases covered?"
"Does this testing approach give you confidence?"
✅ "What problem does this solve?"
[Wait for answer]
"Who will use it?"
[Wait for answer]
❌ "What problem does this solve, who will use it,
what are the constraints, and what's the success criteria?"✅ "Which approach fits better?
A. Simple file-based storage
B. Database with caching
C. External service integration"
❌ "How do you want to handle storage?"✅ "You mentioned analytics - is that needed for v1
or can we defer it?"
❌ Adding analytics, caching, and multi-tenancy
because "we might need them later"✅ Presenting 3 approaches with trade-offs
before asking which to pursue
❌ Jumping straight to your preferred solution✅ "Here's the data model [200 words].
Does this match your mental model?"
❌ Presenting the entire design in one 2000-word block| Excuse | Reality |
|---|---|
| "I know what they need" | Ask. You might be wrong. |
| "Multiple questions is faster" | Overwhelms. One at a time. |
| "One approach is obviously best" | Present options. Let them choose. |
| "They'll say if it's wrong" | Validate incrementally. Don't assume. |
| "Details can wait" | Get details now. Assumptions cause rework. |
# [Feature Name] Design
## Purpose
[What problem this solves]
## Users
[Who will use this]
## Success Criteria
- [ ] [Criterion 1]
- [ ] [Criterion 2]
## Constraints
- [Constraint 1]
- [Constraint 2]
## Out of Scope
- [Explicitly excluded 1]
- [Explicitly excluded 2]
## Approach Chosen
[Which option and why]
## Architecture
[High-level structure]
## Components
[Key pieces]
## Data Flow
[How data moves]
## Error Handling
[What can go wrong and how handled]
## Testing Strategy
[How to verify]
## Observability (if applicable)
- Logging: [what to log]
- Metrics: [what to track]
- Alerts: [when to alert]
## UI Mockup (if applicable)
[ASCII mockup for UI features]
## Questions Resolved
- Q: [Question asked]
A: [Answer given]┌─────────────────────────────────────────┐
│ [Component Name] │
├─────────────────────────────────────────┤
│ [Header/Navigation] │
├─────────────────────────────────────────┤
│ │
│ [Main content area] │
│ │
│ [Input fields, buttons, etc.] │
│ │
├─────────────────────────────────────────┤
│ [Footer/Actions] │
└─────────────────────────────────────────┘# First create directory
Bash(command="mkdir -p docs/plans")
# Then save design using Write tool (permission-free)
Write(file_path="docs/plans/YYYY-MM-DD-<feature>-design.md", content="[full design content from template above]")
# Do NOT auto-commit — let the user decide when to commit# Step 1: READ
Read(file_path=".claude/cc10x/activeContext.md")
# Step 2: VERIFY anchors exist (## References, ## Recent Changes, ## Next Steps)
# Step 3: EDIT using stable anchors
# Add design to References
Edit(file_path=".claude/cc10x/activeContext.md",
old_string="## References",
new_string="## References\n- Design: `docs/plans/YYYY-MM-DD-<feature>-design.md`")
# Index the design creation in Recent Changes
Edit(file_path=".claude/cc10x/activeContext.md",
old_string="## Recent Changes",
new_string="## Recent Changes\n- Design saved: docs/plans/YYYY-MM-DD-<feature>-design.md")
# Make the next step explicit
Edit(file_path=".claude/cc10x/activeContext.md",
old_string="## Next Steps",
new_string="## Next Steps\n1. Decide: plan vs build (design at docs/plans/YYYY-MM-DD-<feature>-design.md)")
# Step 4: VERIFY (do not skip)
Read(file_path=".claude/cc10x/activeContext.md")"Design captured. What's next?" A. Create implementation plan (use planning-patterns skill) B. Start building (use build workflow) C. Review and refine further