majiayu000/brainstorming
Collaborative design refinement through Socratic dialogue. Use when exploring ideas, designing features, or planning architecture. Not for mechanical implementation tasks.
npx skills add https://github.com/majiayu000/spellbook --skill brainstorming
> From obra/superpowers
Turn rough ideas into fully-formed designs through collaborative dialogue, NOT immediate implementation.
Use for: Exploring ideas, designing features, architecture decisions
NOT for: Clear mechanical processes with obvious implementation
Good: "Should this feature support offline mode?
A) Yes, full offline support
B) Yes, limited offline (read-only)
C) No, online only"
Bad: "What about offline support? And caching?
Also, how should errors be handled?"
## Approach A: Event-Driven (Recommended)
- Pros: Decoupled, scalable, easy to extend
- Cons: More complex debugging, eventual consistency
- Best for: Systems needing flexibility
## Approach B: Direct Integration
- Pros: Simple, immediate consistency
- Cons: Tight coupling, harder to scale
- Best for: Small, stable systems
## Approach C: Hybrid
- Pros: Balance of both
- Cons: Complexity of managing two patterns
- Best for: Gradual migration scenarios
❌ Wrong:
"What's the expected load? How many users?
What about mobile? Should it work offline?
What's the budget? Timeline?"
✅ Right:
"What's the expected user load?
A) <100 concurrent users
B) 100-1000 concurrent users
C) 1000+ concurrent users"
[Wait for answer]
"Given that load, should we prioritize...?"
Remove unnecessary features from ALL designs:
Never jump to first solution:
Don't dump full design at once:
After design is validated:
User: "I want to add notifications to the app"
Take majiayu000/brainstorming from the repository into ~/.claude/skills for personal
use, or into .claude/skills inside a project.
The agent identifies a skill by the name field in its header. Two skills with the
same name cannot sit side by side — one of them will be ignored.