Design and implement event stores for event-sourced systems. Use when building event sourcing infrastructure, choosing event store technologies, or implementing event persistence patterns.
68
52%
Does it follow best practices?
Impact
99%
1.15xAverage score across 3 eval scenarios
Passed
No known issues
Optimize this skill with Tessl
npx tessl skill review --optimize ./tests/ext_conformance/artifacts/agents-wshobson/backend-development/skills/event-store-design/SKILL.mdQuality
Discovery
75%Based on the skill's description, can an agent find and select it at the right time? Clear, specific descriptions lead to better discovery.
The description is well-structured with a clear 'Use when' clause that covers the key scenarios, and it targets a distinct technical niche. However, it could benefit from more concrete action verbs and additional trigger terms that users might naturally use when seeking help with event sourcing.
Suggestions
Add more specific concrete actions such as 'append events to streams, read event streams, implement snapshots, handle concurrency conflicts'.
Include additional natural trigger terms like 'CQRS', 'event stream', 'EventStoreDB', 'append-only log', 'aggregate events' to improve keyword coverage.
| Dimension | Reasoning | Score |
|---|---|---|
Specificity | Names the domain (event sourcing) and some actions ('design and implement event stores', 'choosing event store technologies', 'implementing event persistence patterns'), but the actions are somewhat high-level and lack concrete specifics like particular operations (e.g., append events, read streams, snapshot aggregates). | 2 / 3 |
Completeness | Clearly answers both 'what' (design and implement event stores for event-sourced systems) and 'when' (explicit 'Use when' clause covering building event sourcing infrastructure, choosing technologies, or implementing persistence patterns). | 3 / 3 |
Trigger Term Quality | Includes relevant terms like 'event stores', 'event-sourced', 'event sourcing infrastructure', and 'event persistence patterns', but misses common natural variations users might say such as 'event stream', 'event log', 'CQRS', 'aggregate events', 'EventStoreDB', or 'append-only store'. | 2 / 3 |
Distinctiveness Conflict Risk | Event sourcing and event stores are a well-defined niche domain. The description is specific enough to be clearly distinguishable from general database skills, messaging skills, or broader architecture skills. | 3 / 3 |
Total | 10 / 12 Passed |
Implementation
29%Reviews the quality of instructions and guidance provided to agents. Good implementation is clear, handles edge cases, and produces reliable results.
This skill provides high-quality, executable code templates for multiple event store implementations, but suffers from being a monolithic reference dump rather than a well-structured skill. It lacks workflow guidance for actually implementing an event store, includes verbose explanatory content Claude doesn't need, and would benefit greatly from splitting templates into separate files with a concise overview in the main SKILL.md.
Suggestions
Split the four implementation templates into separate files (e.g., postgres-event-store.md, eventstoredb-usage.md, dynamo-event-store.md) and reference them from a concise overview in SKILL.md.
Add a clear step-by-step workflow for setting up an event store, including validation checkpoints (e.g., verify schema creation, test append/read cycle, confirm subscription works).
Remove the Core Concepts section (architecture diagram, requirements table, technology comparison) — Claude already knows these concepts. Replace with a brief decision matrix of 2-3 lines.
Remove the do's/don'ts section or reduce to 2-3 non-obvious, actionable constraints specific to implementation pitfalls.
| Dimension | Reasoning | Score |
|---|---|---|
Conciseness | The skill is extremely verbose at ~350+ lines. It includes extensive ASCII diagrams, requirement tables, and technology comparison tables that explain concepts Claude already understands. Four full implementation templates across different technologies (PostgreSQL, EventStoreDB, DynamoDB) create significant bloat. The do's/don'ts section restates well-known event sourcing principles. | 1 / 3 |
Actionability | The code templates are fully executable and copy-paste ready — complete SQL schemas, a full Python EventStore class with asyncpg, EventStoreDB client usage, and DynamoDB implementation. Each includes concrete connection setup, CRUD operations, and subscription handling with real library APIs. | 3 / 3 |
Workflow Clarity | There is no clear workflow or sequenced process for actually setting up an event store. The content presents templates and reference material but lacks step-by-step guidance on how to go from nothing to a working event store. No validation checkpoints exist — e.g., no guidance on verifying the schema was created correctly, testing the event store works, or handling migration errors. | 1 / 3 |
Progressive Disclosure | Everything is dumped into a single monolithic file with no references to supporting files. Four complete implementation templates for different technologies should be split into separate files. The content is a wall of code with no clear navigation structure or layering between overview and detailed reference material. | 1 / 3 |
Total | 6 / 12 Passed |
Validation
100%Checks the skill against the spec for correct structure and formatting. All validation checks must pass before discovery and implementation can be scored.
Validation — 11 / 11 Passed
Validation for skill structure
No warnings or errors.
99da384
Table of Contents
If you maintain this skill, you can claim it as your own. Once claimed, you can manage eval scenarios, bundle related skills, attach documentation or rules, and ensure cross-agent compatibility.