PlugWiki

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

  1. When to Use This Skill
  2. Core Concepts
  3. 1. Projection Architecture
  4. 2. Projection Types
  5. Templates and detailed worked examples
  6. Best Practices
  7. Do's
  8. Don'ts

Key facts

License
MIT
Installs on skills.sh
10,734 (Nov 2, 2026)
Last repo commit
Oct 30, 2026

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 architecture

  • Live, 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 types

  • Projection 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 projector

  • Postgres 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 summary

  • Search index fed by product events (details.md)

    Indexes product events and deletes the document when a ProductDeleted event arrives.

    Write · Template 3: Elasticsearch search

  • Daily sales totals from events (details.md)

    A projection that increments and decrements sales figures as events arrive.

    Write · Template 4: Aggregating

  • Customer activity across several tables (details.md)

    A projection that updates more than one table for a single event.

    Write · Template 5: Multi-table

  • Idempotence, 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-onlyNo read-only mode. Use version control.
Talks toYour PostgreSQL and Elasticsearch servers, if you run the templates
Sign-in and keysSKILL.md and details.md do not mention any account or key.
Scopes
  • Claude can write projection code in your project when you ask

  • The templates write to PostgreSQL through asyncpg and to Elasticsearch

  • The rebuild method deletes a projection checkpoint before it replays events

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

wshobson/agentsskills.sh

Sources

Docs, issue trackers and discussions this page is built from.

Show all 4
  1. projection-patterns SKILL.md · github.com
  2. wshobson/agents README · github.com
  3. backend-development plugin.json · github.com
  4. projection-patterns references/details.md · github.com

Updated Nov 2, 2026.