Agent skill

kurrentdb

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".

Stars 1
Forks 0

Install this agent skill to your Project

npx add-skill https://github.com/kurrent-io/coding-agent-skills/tree/main/kurrent_skills

SKILL.md

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)

bash
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

Expand your agent's capabilities with these related and highly-rated skills.

mattpocock/skills

git-guardrails-claude-code

Set up Claude Code hooks to block dangerous git commands (push, reset --hard, clean, branch -D, etc.) before they execute. Use when user wants to prevent destructive git operations, add git safety hooks, or block git push/reset in Claude Code.

111,310 9,758
Explore
mattpocock/skills

scaffold-exercises

Create exercise directory structures with sections, problems, solutions, and explainers that pass linting. Use when user wants to scaffold exercises, create exercise stubs, or set up a new course section.

111,310 9,758
Explore
mattpocock/skills

setup-pre-commit

Set up Husky pre-commit hooks with lint-staged (Prettier), type checking, and tests in the current repo. Use when user wants to add pre-commit hooks, set up Husky, configure lint-staged, or add commit-time formatting/typechecking/testing.

111,310 9,758
Explore
mattpocock/skills

migrate-to-shoehorn

Migrate test files from `as` type assertions to @total-typescript/shoehorn. Use when user mentions shoehorn, wants to replace `as` in tests, or needs partial test data.

111,310 9,758
Explore
mattpocock/skills

edit-article

Edit and improve articles by restructuring sections, improving clarity, and tightening prose. Use when user wants to edit, revise, or improve an article draft.

111,310 9,758
Explore
mattpocock/skills

obsidian-vault

Search, create, and manage notes in the Obsidian vault with wikilinks and index notes. Use when user wants to find, create, or organize notes in Obsidian.

111,310 9,758
Explore

Didn't find tool you were looking for?

Be as detailed as possible for better results