Implement Command Query Responsibility Segregation for scalable architectures. Use when separating read and write models, optimizing query performance, or building event-sourced systems.
Install with Tessl CLI
npx tessl i github:wshobson/agents --skill cqrs-implementationOverall
score
73%
Does it follow best practices?
If you maintain this skill, you can automatically optimize it using the tessl CLI to improve its score:
npx tessl skill review --optimize ./path/to/skillEvaluation — 88%
↑ 1.54xAgent success when using this skill
Validation for skill structure
Command/Query bus infrastructure
Command base dataclass
0%
50%
Auto-generated command_id
0%
50%
Auto-generated timestamp
0%
50%
CommandHandler ABC Generic
0%
100%
CommandBus register/dispatch
50%
100%
CommandBus ValueError
100%
100%
QueryHandler ABC Generic
0%
100%
QueryBus register/dispatch
50%
100%
QueryBus ValueError
100%
100%
Async handlers
0%
100%
Separate command and query models
100%
100%
Validation in command handler
100%
100%
No reads in command handlers
100%
100%
Without context: $1.0944 · 3m 44s · 38 turns · 87 in / 15,254 out tokens
With context: $1.1663 · 3m 58s · 36 turns · 332 in / 15,381 out tokens
Read model synchronization and projection
Denormalized view records
100%
100%
Projection handles() method
0%
100%
Projection apply() is async
0%
0%
Projection clear() method
0%
63%
Per-projection checkpoints
100%
100%
Sync reads from checkpoint
100%
100%
Checkpoint updated after events
100%
100%
run() uses asyncio.sleep loop
0%
0%
rebuild_projection clears first
56%
100%
rebuild_projection resets checkpoint
100%
100%
rebuild_projection replays all
100%
100%
Event types have global_position
40%
100%
Without context: $0.3948 · 1m 52s · 16 turns · 17 in / 5,696 out tokens
With context: $1.2576 · 4m 14s · 39 turns · 101 in / 16,332 out tokens
FastAPI integration, pagination, eventual consistency
POST for create command
100%
100%
PUT for update command
0%
100%
GET for single query
100%
100%
GET for list query
100%
100%
CommandBus via Depends
0%
100%
QueryBus via Depends
0%
100%
PaginatedResult items field
100%
100%
PaginatedResult total field
100%
100%
PaginatedResult page fields
100%
100%
PaginatedResult total_pages
0%
63%
Consistency handler timeout
100%
100%
Stale data warning
56%
67%
Buses stored on app.state
100%
100%
Without context: $0.5967 · 2m 23s · 25 turns · 25 in / 8,474 out tokens
With context: $1.3585 · 4m 36s · 45 turns · 76 in / 16,153 out tokens
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.