Getting it into your agent
One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.
npx skills add j4flmao/agent-skills --skill event-sourcinggit clone --depth 1 https://github.com/j4flmao/agent-skillsWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/skills/j4flmao/agent-skills/event-sourcing)<a href="https://agentmods.dev/skills/j4flmao/agent-skills/event-sourcing"><img src="https://agentmods.dev/badge/skills/j4flmao/agent-skills/event-sourcing/github.svg" alt="Measured on agentmods" height="20"></a>Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.
<a href="https://agentmods.dev/skills/j4flmao/agent-skills/event-sourcing"><img src="https://agentmods.dev/badge/skills/j4flmao/agent-skills/event-sourcing.svg" alt="Reviewed on agentmods" width="80" height="20"></a>- NVIDIA SkillSpector warn
SkillSpector: 1 finding, up to medium
These are SkillSpector’s own severities. On a checked sample its high-severity flags on skills were ~96% false positives — a documented command, a public API, a “never do X” rule — so we show them as a caution to read, not a verdict. Why →
- medium analysis-evasion · line 1 Suspicious Unicode normalization or mixed-script contentFix: Review the flagged content for security risks. Ensure no credentials, secrets, or sensitive data are exposed.
What it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5.1 | $0.00118 | $0.04339 |
| Opus 5 | $0.00059 | $0.02169 |
| Sonnet 5 | $0.00024 | $0.00868 |
| Haiku 4.5 | $0.00012 | $0.00434 |
Grade A, and why
backend-event-sourcing scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 7d ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
How it starts
The opening of the file, as written. The whole thing — 507 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Backend Event Sourcing
Purpose
Store state changes as an append-only sequence of events. Current state is derived by replaying events. Every event is immutable, auditable, and replayable.
Agent Protocol
Trigger
Exact user phrases: "event sourcing", "event store", "event stream", "event sourced", "rehydrate from events", "event replay", "projection rebuild", "append-only log", "event history", "event store pattern".
Input Context
- Domain aggregates and their state changes.
- Event store technology (PostgreSQL, EventStoreDB, DynamoDB).
- Projection requirements (read models, search indexes, materialized views).
Output Artifact
Event sourcing design as text. No file unless requested.
Response Format
Aggregate: {name}
Events: [{EventName, version, key fields}]
Current state: {derived by replay}
Projections: [{name, rebuild from}]
Completion Criteria
- All state changes are captured as events (not just some).
- Event store is append-only — no updates or deletes.
- Aggregate state can be rebuilt by replaying all events.
- Projections can be rebuilt from scratch by replaying all events.
- Events are immutable and carry version number.
- Event schema includes metadata (eventId, aggregateId, version, timestamp).
- Snapshot strategy defined for aggregates with many events.
Max Response Length
Per aggregate: 8 lines. Full design: 35 lines.
Architecture Decision Tree
Should I Use Event Sourcing?
Does the full history of changes matter?
├── Yes → Audit, compliance, dispute resolution → Event Sourcing candidate
└── No → Is state derivation logic complex?
├── Yes → Event Sourcing simplifies temporal queries
└── No → Are multiple projections of the same data needed?
├── Yes → Event Sourcing enables flexible projections
└── No → Simple CRUD is sufficient — skip Event Sourcing
Event Store Selection
What infrastructure is already available?
├── PostgreSQL → Great event store (JSONB for event data, reliable, transactional)
├── EventStoreDB → Purpose-built for event sourcing (projections built-in)
├── DynamoDB → Serverless, single-table design for event streams
└── Kafka → Durable log, but limited query capabilities for aggregate reconstruction
What ships with it
9 files beside SKILL.md in the same directory: the scripts, references and assets a skill reads on demand. Not counted in the per-session cost; read them before you install if any of them is executable.
- references/aggregate-design.md 2.8 KB
- references/aggregate-reconstruction.md 8.2 KB
- references/event-sourcing-advanced.md 7.9 KB
- references/event-sourcing-fundamentals.md 7.9 KB
- references/event-sourcing-projections.md 9.5 KB
- references/event-sourcing-snapshots.md 8.5 KB
- references/event-sourcing-testing.md 7.0 KB
- references/event-store-patterns.md 2.3 KB
- references/event-versioning.md 2.3 KB
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- 7d ago First seen · 507 lines · 118 tokens per session scan A 1a74e40133e6
backend-event-sourcing is a skill published in the GitHub repository j4flmao/agent-skills (22 stars, last pushed 4d ago), licensed MIT. It adds 118 tokens to every session and 4,339 once invoked, about $0.0006 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-09-03.
Other skills, from other repositories
architecture-paradigm-cqrs-es
Applies CQRS and Event Sourcing for read/write separation and audit trails. Use when designing systems with complex domain logic or full state-change history.
event-driven-architecture
Event-Driven Architecture Review: Reviews and designs event-driven systems — Event Sourcing, CQRS, Saga patterns, Domain Events, message brokers, and eventual consistency. Use when the user mentions events, event sourcing, CQRS, saga, choreography vs orchestration, Kafka architecture, event store, projections, read…
migration-evolution
Use when thinking through, reviewing, changing, or verifying data and contract evolution: schema migrations, expand-and-contract, resumable backfills, API or event compatibility, synchronization, CDC, reindexing, traffic cutover, or legacy integration. For outbox and inbox delivery use async-messaging; for transaction…
transactions-consistency
Use when thinking through, reviewing, changing, or verifying transactional or concurrent behavior: isolation, anomalies, locking, state machines, idempotency, sagas, consistency, replication, sharding, consensus, distributed locks, fencing, or ordering. For jobs, queues, and outbox delivery use async-messaging; for…
nosql-database-design
Designs a NoSQL data model by leading with access pattern analysis. Covers DynamoDB single-table design (PK/SK/GSI) and MongoDB embedding vs referencing, consistency models, and capacity planning. Invoked when the user asks to design a DynamoDB schema, MongoDB data model, or NoSQL data model.
sql-query-optimization
Diagnoses and optimises slow SQL queries using EXPLAIN ANALYZE. Covers identifying bottlenecks (sequential scans, bad estimates, heap fetches), index strategy, query rewrites, and verification. Invoked when the user asks to optimize a query, fix a slow database query, or improve database performance.