CLI tool for interacting with Event Model files - query, update, and export event models from the terminal
npm install eventmodelerCLI tool for interacting with Event Model files. Query, update, and export event models from the terminal.
Works with .eventmodel files created by the Event Modeling App.
``bash`
npm install -g eventmodeler
`bashOpen Event Modeling app in browser
eventmodeler
Commands
$3
`bash
eventmodeler list slices # List all slices with status
eventmodeler list events # List all events
eventmodeler list commands # List all commands
eventmodeler list chapters # List all chapters
eventmodeler list aggregates # List all aggregates
eventmodeler list actors # List all actors
`$3
`bash
eventmodeler show slice # Show detailed view of a slice
eventmodeler show event # Show detailed view of an event
eventmodeler show command # Show detailed view of a command
eventmodeler show chapter # Show chapter with its slices
eventmodeler show actor # Show actor with its screens
`$3
`bash
eventmodeler show completeness # Show field mapping completeness for any element
eventmodeler show model-completeness # Show completeness of all flows in the model
eventmodeler show aggregate-completeness # Check if events have the aggregate ID field
`$3
`bash
eventmodeler search # Search for entities by name
`$3
`bash
Mark slice status
eventmodeler mark "Place Order" done
eventmodeler mark "Cancel Order" in-progressAdd scenario to a slice
eventmodeler add scenario --slice "Place Order" --json '{"name": "Happy path", ...}'Add field to an entity
eventmodeler add field --event "OrderPlaced" --json '{"name": "orderId", "type": "UUID"}'Remove field
eventmodeler remove field --event "OrderPlaced" --field "legacyId"Update field properties
eventmodeler update field --read-model "OrderSummary" --field "notes" --optional trueMap fields between elements
eventmodeler map fields --flow "OrderPlaced→OrderSummary" --json '[{"from": "total", "to": "totalAmount"}]'
`$3
`bash
eventmodeler summary # Show model summary statistics
eventmodeler export json # Export entire model as JSON
`Output Format
By default, output is in XML format (optimized for AI agents). Use
--format json for JSON output:`bash
eventmodeler list slices --format json
eventmodeler show slice "Place Order" --format json
`$3
Set your preferred default format via:
Environment variable:
`bash
export EVENTMODELER_FORMAT=json
`Config file (
~/.eventmodeler/config.json):
`json
{
"format": "json"
}
`Priority: CLI flag > environment variable > config file > default (xml)
Options
`
-f, --file Path to .eventmodel file (default: auto-detect)
--format Output format (default: xml)
-h, --help Show help message
-v, --version Show version number
`Use Cases
$3
The CLI is designed to work well with AI coding assistants. The XML output format provides structured, readable data that AI agents can easily parse and understand:
`bash
eventmodeler show slice "Place Order"
`$3
Use JSON output to build code generators that read your event model:
`bash
eventmodeler list events --format json | your-codegen-tool
eventmodeler show slice "Place Order" --format json
`$3
Check model completeness in your pipeline:
`bash
eventmodeler show model-completeness --format json
`Requirements
- Node.js >= 18.0.0
- A
.eventmodel file in the current directory (or specify with -f`)MIT