conduct-event-storming
Skill4 starsChanged 3 months agoMITView on GitHub
WHEN/WHERE/WHO: [Scheduling: Architects, domain experts, product owners, or agents analyzing a new business domain or complex workflow.] HOW: [Structural: Use this SKILL to facilitate a Big Picture Event Storming session, discovering Domain Events chronologically, and mapping them to Commands, Actors, and Aggregates.] WHY: [Scheduling: Traditional requirements gathering focuses on static data, leading to anemic models. Event Storming focuses on behavior to reveal domain boundaries.]
In this repository61 other files it gives its agents.
- activate-personalSkill
- analyze-with-tactics-questionnairesSkill
- apply-agile-testing-quadrantsSkill
- apply-architectural-tacticsSkill
- apply-attribute-driven-designSkill
- apply-fundamentals-of-data-visualizationSkill
- apply-oopsi-modelSkill
- apply-screenplay-patternSkill
- apply-specification-by-exampleSkill
- blog-topic-discoverSkill
- build-agent-memory-systemsSkill
- build-business-objectives-modelSkill
- build-data-dictionarySkill
- build-feature-treeSkill
- comment-alive-test-driven-developmentSkill
- create-ecosystem-mapSkill
- create-living-documentationSkill
- create-skill-from-bookSkill
- CREATING-SKILL-TEMPLATESkill
- define-architectural-driversSkill
- define-bounded-contextsSkill
- define-ubiquitous-languageSkill
- design-agentic-screenplay-modelSkill
- design-agent-perception-layersSkill
- design-agent-planningSkill
- design-agent-reward-functionsSkill
- design-agents-using-patternsSkill
- design-architecture-viewpointsSkill
- design-autonomous-ai-interfacesSkill
- design-ddd-aggregatesSkill
- design-tool-use-sandboxingSkill
- document-architectural-decisionsSkill
- document-legacy-codebaseSkill
- doc-with-usage-exampleSkill
- draft-srs-documentSkill
- elicit-requirements-modelsSkill
- evolve-skill-with-wikiSkill
- extract-business-rulesSkill
- facilitate-example-mappingSkill
- facilitate-user-story-mappingSkill
- implement-agent-observabilitySkill
- implement-agent-reflectionSkill
- improve-existing-skillSkill
- improve-user-storySkill
- managing-ai-projectsSkill
- orchestrate-multi-agent-collaborationSkill
- prioritize-requirementsSkill
- review-c4-modelSkill
- review-data-engineeringSkill
- save-as-skillSkill
- scaffold-cmake-cxx-sanitize-gtest-envSkill
- skill-commonSkill
- task-commit-triggerSkill
- test-case-with-demoSkill
- test-case-with-readmeSkill
- test-driven-developmentSkill
- UnitTesting-convert2CaTDDSkill
- update-my-resumeSkill
- update-spec-contextSkill
- validate-requirements-criteriaSkill
- The first 60 shown.
The file
We split this skill into the rules it gives an agent
12 rules. About 0 are common, 12 are distinctive, and 0 are very specific to this project.
≈0
Common · estimate
Many files like this have a rule of this kind.
≈12
Distinctive · estimate
This author's own choices. Worth a look.
0
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Distinctive: line 13
When this skill is activated, first load skill-common and apply the shared conventions it defines: canonical section order, frontmatter …
- Distinctive: line 46
Transfer Check: Verify the workflow still works for simple business processes and for branching workflows with policies and external …
- Distinctive: line 47
Stop Rule: If the business process is too vague to name events and triggers reliably, stop and ask before mapping the timeline.
- Distinctive: line 50
RULE 1: Events First: Always start by identifying Domain Events.
- Distinctive: line 52
RULE 3: Identify Triggers: Every event must have a trigger: either a user Command, an external system, time passing, or a Policy.
- Distinctive: line 56
Ask the user to list all the things that happen in the business process.
- Distinctive: line 76
Look for clusters of Aggregates to identify potential Bounded Context Boundaries.
- Distinctive: line 79
Document the final flow in a structured markdown list, explicitly using the color-coded legend terminology.
- Distinctive: line 91
Do commands, actors, and aggregates form consistent state machines?
- Distinctive: line 95
Verify all Domain Events are past tense.
- Distinctive: line 96
Verify no Domain Event happens "by magic" (it must have a Command, Policy, or External System trigger).
- Distinctive: line 97
Verify Aggregates are named as nouns that represent business concepts.
≈ “Common” is an estimate: at least 1 in 5 of the 350,495 skill files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
Conduct Event Storming
Common Contract (Load First)
When this skill is activated, first load skill-common and apply the shared conventions it defines: canonical section order, frontmatter rules, anti-pattern guidance, and the Review In Mind loop in review-in-mind. This skill adds only domain-specific rules below.
Who
Software Architects, Domain Experts, Product Owners, Business Analysts, and AI Agents acting as facilitators. The agent uses this skill to lead a structured exploration of a business domain using the Event Storming format.
What
Facilitate a "Big Picture" or "Design-Level" Event Storming session. The output is a chronological flow of business events, the triggers that cause them, the actors involved, and the aggregates (state machines) that enforce business rules.
When
Invoke this skill at the beginning of a project, when reverse-engineering a legacy system, or when tackling a highly complex, poorly understood business workflow.
Trigger phrases: "Let's event storm this", "Map out the domain events for...", "What are the events in this subdomain?".
Where
Applies to system design planning, requirements analysis, and domain discovery discussions. The output is typically captured in a Mermaid graph or markdown list.
Why
Focusing on data structures (ERDs) early leads to tight coupling and "CRUD-heavy" systems. Event Storming forces participants to think in terms of business behavior (verbs) and timelines, uncovering edge cases and natural boundaries (Bounded Contexts) much earlier in the lifecycle.
Inputs
- Business Process/Workflow (required): The domain to explore (e.g., "E-commerce Checkout", "Loan Origination").
- Known Actors (optional): Users or external systems interacting with the workflow.
Output (Logical Evidence)
- A chronological timeline of Domain Events, Commands, Actors, Policies, and Aggregates.
- A Mermaid.js flowchart visualizing the Event Storming timeline.
Optimization Readiness
- Failure Signals: Events are not written in past tense, triggers are missing, business behavior is replaced by UI or data-model discussion, or the timeline fails to expose boundaries and bottlenecks.
- Evidence To Collect: Event timelines, command-event trigger chains, actor assignments, aggregate clusters, and examples of branching or parallel paths that were discovered.
- Safe Mutation Boundaries: Refine facilitation prompts, legend guidance, timeline formatting, and aggregate-clustering cues without changing the core events-first exploration model.
- Acceptance Criteria: Accept revisions only if the resulting model starts with events, ties each event to a trigger, and identifies aggregates and possible bounded-context boundaries from the timeline.
- Rejected Revision Handling: Record “magic” events, non-past-tense labels, and UI-first discussion patterns so they are not repeated.
- Transfer Check: Verify the workflow still works for simple business processes and for branching workflows with policies and external systems.
- Stop Rule: If the business process is too vague to name events and triggers reliably, stop and ask before mapping the timeline.
Constraints (Logical Boundaries)
- RULE 1: Events First. Always start by identifying Domain Events. Do not discuss UI, databases, or classes until the timeline of events is complete.
- RULE 2: Past Tense. Domain Events MUST be written as verbs in the past tense (e.g.,
OrderPlaced, notPlaceOrder). - RULE 3: Identify Triggers. Every event must have a trigger: either a user Command, an external system, time passing, or a Policy.
How (Structural Workflow)
Phase 1: Chaotic Exploration (Domain Events)
- Ask the user to list all the things that happen in the business process.
- Format these as Domain Events (Orange sticky notes) written in past tense.
- Example:
ItemAddedToCart,PaymentDeclined,OrderShipped.
- Example:
- Arrange them in chronological order from left to right.
- Identify parallel paths, branching logic, and bottlenecks.
Phase 2: Enforce the Timeline & Triggers
- For each Domain Event, ask "What caused this?".
- Identify the Commands (Blue sticky notes) that trigger the events.
- Example:
Submit Payment(Command) ->PaymentProcessed(Event).
- Example:
- Identify the Actors (Yellow sticky notes) who execute the Commands.
- Example:
Customer(Actor) ->Submit Payment(Command).
- Example:
- Identify External Systems (Pink sticky notes) that trigger events or receive them.
- Identify Policies/Read Models (Lilac/Green sticky notes) where automatic business logic triggers a command based on an event.
- Example: Policy "When
PaymentDeclined, triggerSendFailureEmailcommand".
- Example: Policy "When
Phase 3: Identify Aggregates (Design-Level)
- Group the Command and its resulting Event around the data/state it modifies.
- Label this state machine as the Aggregate (Pale Yellow sticky note).
- Example:
Customer->Submit Payment-> PaymentTransaction (Aggregate) ->PaymentProcessed.
- Example:
- Look for clusters of Aggregates to identify potential Bounded Context Boundaries.
Phase 4: Output the Model
- Document the final flow in a structured markdown list, explicitly using the color-coded legend terminology.
- Optionally generate a Mermaid.js graph to visualize the Actor -> Command -> Aggregate -> Event flow.
Resources
- Event Storming Legend
Review In Mind (ReviewInMindGenie)
Execute the common review loop in review-in-mind before delivering.
Review lens for this skill:
- Are domain events chronological, named in past tense, and each tied to a trigger and actor?
- Do commands, actors, and aggregates form consistent state machines?
- Are business rules enforced by aggregates rather than scattered prose?
Validation
- Verify all Domain Events are past tense.
- Verify no Domain Event happens "by magic" (it must have a Command, Policy, or External System trigger).
- Verify Aggregates are named as nouns that represent business concepts.
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
No reviews yet
People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.
- It worked
- Partly
- It didn't
Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

