projection-patterns Skill for Claude: What It Does and How to Install It
Makes Claude build read models and projections from event streams in CQRS and event-sourced systems.
- Installs
- 10.7K
- on skills.sh
- Stars
- 42.1K
- on GitHub
- Files
- 1
- besides SKILL.md
- Updated
- Oct 2026
- last repo commit
This skill is a projection guide for Claude, from wshobson's agents collection. SKILL.md shows the flow from event store to projector to read model, defines four projection types (live, catchup, persistent, inline) and lists do's and don'ts such as idempotent handlers, checkpoints and lag monitoring.
references/details.md has five Python templates: a basic projector, an order summary projection, an Elasticsearch search projection, an aggregating projection and a multi-table projection. It loads when you build CQRS read sides, materialized views, search indexes from events or real-time dashboards.
Good for
- Developers on event-sourced or CQRS systems
- Teams building materialized views and dashboards
- Engineers feeding search indexes from events
- Architects planning checkpoints and rebuilds
Install projection-patterns
Claude Code
- 1
Copy this prompt.
Install the projection-patterns skill in Claude Code. Run this command: /plugin marketplace add wshobson/agents /plugin install backend-development@claude-code-workflows Then check that it loaded and tell me how to use it.
- 2
Paste it into Claude Code. It shows the change and asks before running it.
Pick one route. The plugin routes install the whole backend-development plugin: 8 agents, 1 command and 9 skills (counted from the plugin folder in the repo tree, which has no hooks or MCP config files). The skills-only routes install just this skill, with no agents or commands. The skill's templates are Python and use asyncpg and Elasticsearch clients.
From the project README. Source.
What's in the skill
When it loads
Build read models and projections from event streams. Use when implementing CQRS read sides, building materialized views, or optimizing query performance in event-sourced systems.
Sections in SKILL.md
- When to Use This Skill
- Core Concepts
- 1. Projection Architecture
- 2. Projection Types
- Templates and detailed worked examples
- Best Practices
- Do's
- Don'ts
Key facts
- Author
- wshobson (repo owner)
- License
- MIT
- Installs on skills.sh
- 10,734 (Nov 2, 2026)
- Last repo commit
- Oct 30, 2026
- What it includes
- 2 files including SKILL.md: references/details.md (no scripts)
What it includes
Event store to projector to read model
A diagram of the flow, where handlers turn events into tables, views or a cache.
Read ·
Projection architectureLive, catchup, persistent and inline
A table that says when each type fits, such as inline for strong consistency and catchup for rebuilding read models.
Try: “Which projection type fits a daily sales report?”
Read ·
Projection typesProjection base class, projector with checkpoints and rebuild (details.md)
Python classes that run handlers over events in batches, store a checkpoint and rebuild by deleting the checkpoint and replaying.
Write ·
Template 1: Basic projectorPostgres read model from order events (details.md)
A projection that handles created, item added, item removed, shipped, completed and cancelled events with asyncpg.
Write ·
Template 2: Order summarySearch index fed by product events (details.md)
Indexes product events and deletes the document when a ProductDeleted event arrives.
Write ·
Template 3: Elasticsearch searchDaily sales totals from events (details.md)
A projection that increments and decrements sales figures as events arrive.
Write ·
Template 4: AggregatingCustomer activity across several tables (details.md)
A projection that updates more than one table for a single event.
Write ·
Template 5: Multi-tableIdempotence, transactions, checkpoints, lag and rebuild planning
Do's and don'ts, including keeping projections independent and processing events in order.
Read ·
Best practices
From the official docs
Permissions
Low risk
What it can do
- Read your data
- Create and change things
- Delete things
- Read-only mode
Watch out for
Rebuild deletes the projection checkpoint
In Template 1, rebuild calls checkpoint_store.delete for the projection, with a comment about optionally clearing read model tables, then replays events. Test rebuilds on a copy of the data. github.com
The search template deletes documents
On a ProductDeleted event, Template 3 calls self.es.delete for the product ID. Point it at a test index first. github.com
The plugin route installs more than this skill
The backend-development plugin has 8 agents, 1 command and 9 skills. We found no hooks or MCP config files in its folder. The skills-only routes install only this skill. github.com
Security advisories
No published security advisories as of Nov 2, 2026.
Technical details
| Turning on read-only | No read-only mode. Use version control. |
|---|---|
| Talks to | Your PostgreSQL and Elasticsearch servers, if you run the templates |
| Sign-in and keys | SKILL.md and details.md do not mention any account or key. |
| Scopes |
|
Questions
What does the projection-patterns skill do?
It gives Claude a guide to read models in event-sourced systems. Claude uses it to write projectors, handlers, checkpoints and rebuild logic.
How do I install projection-patterns?
Use the install box at the top of this page. Pick a skills-only route to get just this skill, or the plugin route to get the whole backend-development plugin.
Is this skill from Anthropic?
No. It is in wshobson/agents, a community collection. The skill sits in the backend-development plugin there.
Should I install the whole backend-development plugin?
Only if you want the rest. The plugin folder holds 8 agents, 1 command and 9 skills, and the repo tree shows no hooks or MCP config files in it.
Does it only work with Postgres?
No. The order summary template uses asyncpg for PostgreSQL, and the search template uses an Elasticsearch client. The patterns in SKILL.md are not tied to one database.
Does it work in the Claude app?
The install box has no Claude app upload for it, because the skill is built around Python code that runs in your own project. Use Claude Code or Codex. The README also lists Cursor, OpenCode, Antigravity CLI, GitHub Copilot and Pi.
Is it safe?
It bundles no scripts: just SKILL.md and one reference file. When you ask for code, Claude writes it in your project. The rebuild example deletes a projection checkpoint, so try rebuilds on a copy first (our advice).
Information
updated Nov 2, 2026
- Repository
- wshobson/agents
- Folder
plugins/backend-development/skills/projection-patterns
Sources
Docs, issue trackers and discussions this page is built from.
Show all 4Hide
- projection-patterns SKILL.md · github.com
- wshobson/agents README · github.com
- backend-development plugin.json · github.com
- projection-patterns references/details.md · github.com