// Refines rough ideas into spec-ready designs through structured Socratic questioning, alternative exploration, and incremental validation. Use BEFORE creating increments - transforms vague concepts into clear requirements. Activates for: brainstorm, explore idea, refine concept, design thinking, what should I build, help me think through, ultrathink, ultrathink on, think through this, deep thinking, architecture exploration, analyze this idea, evaluate approach, explore options.
| name | spec-driven-brainstorming |
| description | Refines rough ideas into spec-ready designs through structured Socratic questioning, alternative exploration, and incremental validation. Use BEFORE creating increments - transforms vague concepts into clear requirements. Activates for: brainstorm, explore idea, refine concept, design thinking, what should I build, help me think through, ultrathink, ultrathink on, think through this, deep thinking, architecture exploration, analyze this idea, evaluate approach, explore options. |
Transform rough ideas into specification-ready designs through structured questioning and alternative exploration, preparing them for SpecWeave's increment workflow.
Core principle: Ask questions to understand, explore alternatives, validate design incrementally, then create specs.
Announce at start: "I'm using spec-driven brainstorming to refine your idea before creating the SpecWeave increment."
🧠 Ultrathink Mode: For complex designs requiring deep reasoning (31,999 thinking tokens), ask: "Can you ultrathink this design?" to enable extended analysis.
| Phase | Key Activities | Tool Usage | Output |
|---|---|---|---|
| 1. Understanding | Socratic questioning (one at a time) | AskUserQuestion for choices | Purpose, constraints, success criteria |
| 2. Tech Stack Detection | Identify existing/desired technologies | Grep/Read existing code | Framework-specific guidance |
| 3. Exploration | Propose 2-3 architectural approaches | AskUserQuestion with trade-offs | Architecture options evaluated |
| 4. Design Validation | Present design in 250-word sections | Open-ended validation | Complete, validated design |
| 5. SpecWeave Handoff | Create increment with validated design | increment-planner skill | spec.md, plan.md, tests.md |
Track your progress with this checklist:
Brainstorming Progress:
- [ ] Phase 1: Understanding (purpose, constraints, criteria gathered)
- [ ] Phase 2: Tech Stack Detection (technologies identified)
- [ ] Phase 3: Exploration (2-3 approaches proposed and evaluated)
- [ ] Phase 4: Design Validation (design validated in sections)
- [ ] Phase 5: SpecWeave Handoff (increment created with specs)
Goal: Gather requirements through Socratic questioning
Activities:
Example using AskUserQuestion:
Question: "What's the primary goal of this feature?"
Options:
- "User-facing functionality" (UI/UX focus, needs frontend + backend)
- "Backend API/service" (Integration focus, no UI needed)
- "Infrastructure/DevOps" (Platform capability, deployment-focused)
- "Data processing/analytics" (Batch/stream processing, data-centric)
Critical Guidelines:
Goal: Understand existing/desired technology context
Activities:
package.json (Node.js/TypeScript/Next.js)requirements.txt or pyproject.toml (Python).csproj (.NET)nextjs for Next.js projectsnodejs-backend for Node.js APIspython-backend for Python backendsdotnet-backend for .NET/C#frontend for React/Vue/AngularExample using AskUserQuestion (greenfield):
Question: "Which technology stack fits your team's expertise and project needs?"
Options:
- "Next.js 14 + TypeScript" (Full-stack React, best for web apps, great DX)
- "FastAPI + Python" (Fast async APIs, ML-ready, Python ecosystem)
- "ASP.NET Core + C#" (Enterprise-grade, strong typing, Microsoft stack)
Goal: Propose and evaluate 2-3 architectural approaches
Activities:
Example using AskUserQuestion:
Question: "Which architectural approach should we use for real-time price tracking?"
Options:
- "Event-driven with WebSockets" (Real-time updates, complex setup, best UX, higher cost)
- "Polling with REST API" (Simple, predictable, easier to debug, slightly delayed)
- "Server-Sent Events (SSE)" (One-way real-time, simpler than WebSockets, HTTP-friendly)
🧠 Ultrathink Tip: For complex architecture decisions with many trade-offs, ask: "Can you ultrathink these approaches?" to get deeper analysis (31,999 thinking tokens).
Critical Guidelines:
Goal: Present complete design incrementally and validate each section
Activities:
Example validation question:
"I've outlined the data flow from price API → WebSocket server → client browser.
Does this approach handle your offline/reconnection scenarios adequately?"
Critical Guidelines:
Goal: Create SpecWeave increment with validated design
When design is validated, ask: "Ready to create the SpecWeave increment with this design?"
When user confirms (any affirmative response):
Option A: Full Increment Creation (Recommended)
Announce: "I'm using the increment-planner skill to create the full increment."
Handoff to increment-planner:
.specweave/docs/internal/strategy/ documentation.specweave/docs/internal/architecture/ documentation.specweave/increments/0001-feature-name/ with:
spec.md (WHAT & WHY - references strategy docs)plan.md (HOW - references architecture docs)tasks.md (implementation checklist)tests.md (test strategy and cases)context-manifest.yaml (selective loading for 70%+ token reduction)Option B: Quick Increment (Fast Start)
Announce: "I'm creating a quick-start increment. We can expand documentation later."
Direct creation (for rapid prototyping):
.specweave/increments/0001-feature-name/ directoryspec.md with validated design (WHAT & WHY)plan.md outline (HOW - to be expanded)tasks.md checklisttests.md with acceptance criteriacontext-manifest.yaml with minimal context🔄 Follow-up: After quick increment, documentation can be expanded incrementally as implementation proceeds.
Use AskUserQuestion for:
Benefits:
Use open-ended questions for:
Example decision flow:
You can and should go backward when:
Example flow diagram:
New constraint revealed?
├─ Yes → Return to Phase 1 (re-understand requirements)
└─ No → Continue
│
Tech stack misalignment?
├─ Yes → Return to Phase 2 (re-detect or choose stack)
└─ No → Continue
│
Approach questioned?
├─ Yes → Return to Phase 3 (re-explore alternatives)
└─ No → Continue to Phase 4
Don't force forward linearly when going backward would give better results.
| Principle | Application |
|---|---|
| One question at a time | Phase 1: Single question per message in Understanding phase |
| Structured choices | Use AskUserQuestion for 2-4 options with clear trade-offs |
| Tech stack awareness | Phase 2: Detect existing or choose appropriate technologies |
| YAGNI ruthlessly | Remove unnecessary complexity from ALL designs |
| Explore alternatives | Always propose 2-3 approaches before settling |
| Incremental validation | Present design in 250-word sections, validate each |
| Flexible progression | Go backward when needed - flexibility > rigidity |
| SpecWeave integration | End with increment creation, not just design document |
| Ultrathink for complexity | Use "ultrathink" keyword for deep reasoning (31,999 tokens) |
spec-driven-brainstorming → increment-planner
.specweave/docs/internal/strategy/).specweave/docs/internal/architecture/)When to use spec-driven-brainstorming:
When to skip to increment-planner:
This skill orchestrates:
increment-planner which invokes:
pm agent (requirements, user stories)architect agent (technical design, ADRs)qa-lead agent (test strategy)spec-driven-brainstorming (this skill)
↓ (validated design)
increment-planner skill
↓ (orchestration)
├─ PM Agent → .specweave/docs/internal/strategy/
│ ├── overview.md (product vision)
│ ├── requirements.md (FR-001, NFR-001)
│ └── user-stories.md (US1, US2, US3)
│
├─ Architect Agent → .specweave/docs/internal/architecture/
│ ├── system-design.md (HLD)
│ ├── component-design.md (LLD)
│ └── adr/0001-decision.md (ADRs)
│
└─ Increment Files → .specweave/increments/0001-feature/
├── spec.md (summary, references strategy)
├── plan.md (summary, references architecture)
├── tasks.md (implementation checklist)
├── tests.md (test strategy)
└── context-manifest.yaml (selective loading)
What is Ultrathink?
When to use Ultrathink:
How to activate: Ask user: "Would you like me to ultrathink this design?" or suggest: "This seems complex - let me ultrathink the architecture options."
Other thinking modes:
think - 4,000 tokens (simple problems)megathink - 10,000 tokens (moderate complexity)ultrathink - 31,999 tokens (high complexity)Example usage:
User: "I need to design a distributed caching system that handles 100K requests/sec"
Assistant: "This is a complex distributed systems problem with many trade-offs.
Let me **ultrathink** the architecture approaches to evaluate:
- Consistency vs availability trade-offs (CAP theorem)
- Cache invalidation strategies
- Horizontal scaling patterns
- Network topology and latency considerations
- Cost optimization at scale"
User: "I want to build something with crypto prices"
Assistant (Phase 1 - Understanding): "I'm using spec-driven brainstorming to refine your idea. Let me understand what you're trying to achieve."
[Asks ONE question at a time:]
Assistant (Phase 2 - Tech Stack): [Scans for package.json, finds Next.js project] "I see you have Next.js 14 in your project. Great - we can build on that."
Assistant (Phase 3 - Exploration): "Let me propose three approaches:" (AskUserQuestion with 3 options)
[User selects SSE]
Assistant (Phase 4 - Design Validation): [Presents architecture in 250-word sections]
Assistant (Phase 5 - SpecWeave Handoff): "Design validated! Ready to create the SpecWeave increment?" [User confirms] "I'm using the increment-planner skill to create the full increment with PM and Architect agents."
User: "I need a distributed task queue with exactly-once delivery guarantees"
Assistant: "This is a complex distributed systems problem with many trade-offs. Let me ultrathink the architecture approaches to ensure we consider all the edge cases around consistency, failure modes, and exactly-once semantics."
[Engages ultrathink mode for deep analysis of distributed systems patterns]
| Anti-Pattern | Why It's Bad | What to Do Instead |
|---|---|---|
| Asking 5 questions at once | Overwhelming, unclear priorities | ONE question at a time in Phase 1 |
| Jumping to implementation | Skips validation, no alternatives explored | Follow Phase 1→2→3→4→5 progression |
| Presenting only 1 approach | No trade-off evaluation | Always propose 2-3 alternatives |
| Skipping tech stack detection | Mismatch with existing codebase | Phase 2: Scan existing or ask |
| Design dump (no validation) | User overwhelmed, no feedback | 250-word sections with validation |
| Creating files directly | Bypasses SpecWeave structure | Use increment-planner handoff |
| Over-engineering simple tasks | Unnecessary complexity | Apply YAGNI ruthlessly |
spec-driven-brainstorming prepares rough ideas for SpecWeave's spec-driven workflow:
When to use this skill:
When to skip to increment-planner:
End state: Validated design ready for SpecWeave increment creation with PM/Architect agent orchestration.