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.
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.
/plugin marketplace add melodic-software/claude-code-plugins/plugin install soft-skills@melodic-softwareThis skill is limited to using the following tools:
references/bounded-context-discovery.mdreferences/persona-prompts.mdreferences/sticky-note-types.mdreferences/templates/event-storm-output.mdreferences/workshop-facilitation.mdUse this skill when you need to:
Keywords: event storming, domain events, commands, actors, bounded contexts, aggregates, domain discovery, workshop simulation, multi-persona, DDD
Event Storming is a workshop-based method for collaborative domain discovery. Participants use sticky notes to map out:
This skill supports three modes of operation:
| Mode | Description | Token Cost | Use Case |
|---|---|---|---|
full-simulation | All 5 personas debate in parallel, 6 phases | ~15K tokens | Comprehensive discovery |
quick | Single analysis pass, no personas | ~3K tokens | Quick domain overview |
guided | Interactive with user, personas on-demand | Variable | User wants control |
Use full-simulation when:
Use quick when:
Use guided when:
The full-simulation mode uses 5 specialized agents to simulate different stakeholder perspectives:
| Persona Agent | Role | Perspective | Contributions |
|---|---|---|---|
domain-expert | Subject Matter Expert | Deep business knowledge | Domain events, business rules, edge cases |
developer-persona | Technical Implementation | System constraints | Technical events, integration points |
business-analyst | Process & Requirements | Process flow | Commands, actors, acceptance criteria |
product-owner | Product Vision | User value | Priorities, MVP scope, user stories |
devils-advocate | Challenger | Identify gaps | Hot spots, missing scenarios, contradictions |
All personas brainstorm events independently. No constraints, no ordering.
Orchestration:
Launch 5 parallel Task agents:
- Task(domain-expert, "Identify all domain events for: {domain}")
- Task(developer-persona, "Identify technical events for: {domain}")
- Task(business-analyst, "Identify commands and actors for: {domain}")
- Task(product-owner, "Prioritize and identify MVP scope for: {domain}")
- Task(devils-advocate, "Challenge and identify gaps for: {domain}")
Synthesize and order events chronologically. Create the timeline.
Identify what triggers each event. Map commands to events.
Map who issues each command. Define roles and systems.
Group related events/commands. Identify natural boundaries.
Devil's advocate challenges. Resolve conflicts and gaps.
Detailed phase guidance: See 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 |
Detailed conventions: See references/sticky-note-types.md
Since Claude Code subagents cannot spawn other subagents, the main conversation orchestrates:
Main Conversation
↓
Invokes event-storming skill
↓
Skill guides parallel Task tool calls:
├── Task(domain-expert, prompt)
├── Task(developer-persona, prompt)
├── Task(business-analyst, prompt)
├── Task(product-owner, prompt)
└── Task(devils-advocate, prompt)
↓
Skill synthesizes results with provenance tracking
↓
Outputs event catalog with [persona] attribution
I 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 spots
Give 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.
The event storming session produces a structured event catalog:
# 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]
Full template: See references/templates/event-storm-output.md
Event storming connects with:
Workflow:
Domain Storytelling → Event Storming → Modular Architecture
(understand "what") (design "how") (implement "where")
references/workshop-facilitation.md - Phase orchestration and timingreferences/persona-prompts.md - Prompt templates for each personareferences/sticky-note-types.md - Color conventions and usagereferences/bounded-context-discovery.md - Context identification patternsreferences/templates/event-storm-output.md - Output format with provenanceDate: 2025-12-22 Model: claude-opus-4-5-20251101
Creating algorithmic art using p5.js with seeded randomness and interactive parameter exploration. Use this when users request creating art using code, generative art, algorithmic art, flow fields, or particle systems. Create original algorithmic art rather than copying existing artists' work to avoid copyright violations.
Applies Anthropic's official brand colors and typography to any sort of artifact that may benefit from having Anthropic's look-and-feel. Use it when brand colors or style guidelines, visual formatting, or company design standards apply.
Create beautiful visual art in .png and .pdf documents using design philosophy. You should use this skill when the user asks to create a poster, piece of art, design, or other static piece. Create original visual designs, never copying existing artists' work to avoid copyright violations.