Loading...
Loading...
AI-simulated event storming workshop with multi-persona support. Use when discovering domain events, commands, actors, and bounded contexts. Supports three modes - full-simulation (5 persona agents debate), quick (single-pass analysis), and guided (interactive with user). Orchestrates persona agents and synthesizes results.
npx skill4agent add melodic-software/claude-code-plugins event-storming# Question 1: Workshop Mode (MCP: Event Storming methodology)
question: "Which event storming mode do you need?"
header: "Mode"
options:
- label: "Full Simulation (Recommended)"
description: "All 5 personas debate in parallel, 6 phases (~15K tokens)"
- label: "Quick"
description: "Single analysis pass, no personas (~3K tokens)"
- label: "Guided"
description: "Interactive with user, personas on-demand"
- label: "Codebase Analysis"
description: "Discover events from existing code structure"
# Question 2: Domain Scope (MCP: DDD bounded context patterns)
question: "How complex is the domain you're exploring?"
header: "Scope"
options:
- label: "Single Bounded Context"
description: "One domain area, focused discovery"
- label: "Multiple Contexts"
description: "Identify 2-5 bounded context boundaries"
- label: "Enterprise Domain"
description: "Comprehensive cross-domain mapping"
- label: "Unknown"
description: "Help me determine scope first"| Mode | Description | Token Cost | Use Case |
|---|---|---|---|
| All 5 personas debate in parallel, 6 phases | ~15K tokens | Comprehensive discovery |
| Single analysis pass, no personas | ~3K tokens | Quick domain overview |
| Interactive with user, personas on-demand | Variable | User wants control |
full-simulationquickguided| Persona Agent | Role | Perspective | Contributions |
|---|---|---|---|
| Subject Matter Expert | Deep business knowledge | Domain events, business rules, edge cases |
| Technical Implementation | System constraints | Technical events, integration points |
| Process & Requirements | Process flow | Commands, actors, acceptance criteria |
| Product Vision | User value | Priorities, MVP scope, user stories |
| Challenger | Identify gaps | Hot spots, missing scenarios, contradictions |
Launch 5 parallel Task agents:
- Task(event-storming-persona domain-expert, "Identify all domain events for: {domain}")
- Task(event-storming-persona developer, "Identify technical events for: {domain}")
- Task(event-storming-persona business-analyst, "Identify commands and actors for: {domain}")
- Task(event-storming-persona product-owner, "Prioritize and identify MVP scope for: {domain}")
- Task(event-storming-persona devils-advocate, "Challenge and identify gaps for: {domain}")references/workshop-facilitation.md| Color | Represents | Example |
|---|---|---|
| 🟧 Orange | Domain Event | "Order Placed", "Payment Received" |
| 🟦 Blue | Command | "Place Order", "Process Payment" |
| 🟨 Yellow (small) | Actor | "Customer", "Admin", "System" |
| 🟨 Yellow (large) | Aggregate | "Order", "Customer", "Product" |
| 🟩 Green | Read Model | "Order Summary", "Product Catalog" |
| 🟪 Purple | Policy | "When order placed, reserve inventory" |
| 🟫 Pink | External System | "Payment Gateway", "Email Service" |
| ❗ Red/Pink | Hot Spot | Areas of confusion or conflict |
references/sticky-note-types.mdMain Conversation
↓
Invokes event-storming skill
↓
Skill guides parallel Task tool calls:
├── Task(event-storming-persona domain-expert, prompt)
├── Task(event-storming-persona developer, prompt)
├── Task(event-storming-persona business-analyst, prompt)
├── Task(event-storming-persona product-owner, prompt)
└── Task(event-storming-persona devils-advocate, prompt)
↓
Skill synthesizes results with provenance tracking
↓
Outputs event catalog with [persona] attributionI want to run a full event storming simulation for an e-commerce order management system.
Please:
1. Launch all 5 persona agents in parallel
2. Have them analyze the domain
3. Synthesize their findings
4. Identify bounded contexts
5. Resolve any hot spotsGive me a quick event storm overview for a subscription billing system.
Focus on the core happy path events.Let's do a guided event storming session for a hospital appointment system.
Start with the patient booking journey and I'll guide from there.# Event Storm: [Domain Name]
## Event Catalog
### [Bounded Context Name]
**Events:**
- [Event Name] [Domain Expert] - [Description]
- [Event Name] [Developer] - [Description]
**Commands:**
- [Command Name] → [Event Name] [Business Analyst]
**Actors:**
- [Actor Name]: [Commands they can issue]
**Aggregates:**
- [Aggregate Name]: [Events it produces]
**Policies:**
- [Policy Name]: [Trigger] → [Action]
## Bounded Contexts Identified
1. [Context Name]
- Core Domain / Supporting / Generic
- [Events in this context]
## Hot Spots
- [Issue] - [Resolution or TODO]references/templates/event-storm-output.mdDomain Storytelling → Event Storming → Modular Architecture
(understand "what") (design "how") (implement "where")references/workshop-facilitation.mdreferences/persona-prompts.mdreferences/sticky-note-types.mdreferences/bounded-context-discovery.mdreferences/templates/event-storm-output.md