Claude Code Plugins

Community-maintained marketplace

Feedback

Provides KurrentDB (EventStoreDB) client code for event sourcing and CQRS. Generates correct package names, connection strings, and API patterns for Python, Node.js, .NET, F#, Go, Java, Rust. Triggers on "kurrentdb", "eventstore", "event sourcing", "append events", "read stream", "subscription", "aggregate", "CQRS".

Install Skill

1Download skill
2Enable skills in Claude

Open claude.ai/settings/capabilities and find the "Skills" section

3Upload to Claude

Click "Upload skill" and select the downloaded ZIP file

Note: Please verify skill by going through its instructions before using it.

SKILL.md

name kurrentdb
description Provides KurrentDB (EventStoreDB) client code for event sourcing and CQRS. Generates correct package names, connection strings, and API patterns for Python, Node.js, .NET, F#, Go, Java, Rust. Triggers on "kurrentdb", "eventstore", "event sourcing", "append events", "read stream", "subscription", "aggregate", "CQRS".

KurrentDB Development Skill

Provides working code for KurrentDB (formerly EventStoreDB) - the event-native database.

When to Read Additional Files

Need Read
Full API reference for any language reference.md
Ready-to-run project templates templates/{language}/

Quick Reference

Docker Setup (Insecure Single Node)

docker run --name kurrentdb-node -it -p 2113:2113 \
    docker.kurrent.io/kurrent-latest/kurrentdb:latest \
    --insecure --run-projections=All --enable-atom-pub-over-http

Or use docker-compose - see templates/docker-compose.yaml

Connection String: kurrentdb://localhost:2113?tls=false Web UI: http://localhost:2113

Client Installation Quick Reference

Language Install Command
.NET/C# dotnet add package KurrentDB.Client
F# dotnet add package KurrentDB.Client
Java Add com.eventstore:db-client-java:5.3.2 to pom.xml
Python pip install kurrentdbclient
Node.js npm install @kurrent/kurrentdb-client
Go go get github.com/kurrent-io/KurrentDB-Client-Go/kurrentdb
Rust Add kurrentdb = "1.0" to Cargo.toml

Key API Patterns

Optimistic Concurrency (CRITICAL)

ALWAYS use expected revision for aggregates:

  • NO_STREAM - Creating new aggregate (stream must not exist)
  • StreamExists - Appending to existing stream
  • Specific revision number - Prevent concurrent modifications

Subscriptions

  • Catch-up: Read history + live events. Use for projections.
  • Persistent: Server-managed with ACK/NACK. Use for reliable processing.

System Streams

  • $ce-{category} - All events from streams matching pattern (e.g., $ce-order for order-*)
  • $et-{eventType} - All events of a type (e.g., $et-OrderCreated)

Official Documentation