Skip to content

Eventmodelers Build Kit - C#

Real-time Claude agent that connects to the Eventmodelers Platform and implements board slices as Cratis (Arc + Chronicle) vertical slices in a .NET / C# project.

When a slice is marked Planned on your Eventmodelers board, this kit automatically:

  1. Connects to the Eventmodelers Platform in real-time
  2. Fetches the slice definition and board context
  3. Generates a complete Cratis vertical slice (commands, events, projections, read models, React components)
  4. Builds the slice with dotnet build and runs tests with dotnet test
  5. Updates the board status to Done when complete

The entire process happens automatically, with your Claude agent implementing the slice according to Cratis best practices.

The kit implements the Eventmodelers Build Kits platform contract:

  1. Real-time board subscription — The kit subscribes to your board’s slice status changes
  2. Status-based triggers — Two independent loops:
    • tasks.json non-empty → run prompt.md (reacts to status changes)
    • Slice is Planned in .slices/*/index.json → run backend-prompt.md (builds one slice)
  3. Slice-type routing — Automatically routes to the correct build skill:
    • TRANSLATION or processors[]build-automation (reactors/automation)
    • projections/queries/readModelbuild-state-view (read models)
    • Otherwise (commands/events) → build-state-change (commands/events)
  4. Cratis conformance — Generated slices follow Cratis best practices:
    • One .cs file per slice — every backend artifact (command, event, reactor) lives together
    • [Command] records carry a Handle() method — no separate handler class
    • [EventType] records use past-tense, self-describing names and take no attribute arguments
    • No nullable event properties — model an optional fact as a separate event instead
    • ConceptAs<T> / EventSourceId<T> replace raw primitives for identities and values
    • Namespace mirrors the folder structure

See Understanding the Loop for the full mechanics.

This kit sits between the Eventmodelers Platform and Cratis:

See the sibling kits for other language implementations: Kotlin and Java.

Install from git (this package is private, so use the git install path):

Terminal window
npx github:Cratis/Eventmodelers-Build-Kit-CSharp install

Or use the upstream CLI with this repository as a git stack:

Terminal window
npx @eventmodelers/cli init --stack cratis-csharp --git https://github.com/Cratis/Eventmodelers-Build-Kit-CSharp

After installation, run:

Terminal window
node .build-kit/ralph-claude.js
  1. Install the kit
  2. Connect your Eventmodelers board
  3. Mark a slice as Planned on your board
  4. Watch the kit automatically implement it as a Cratis vertical slice — see Run Your First Slice