Design microservices architectures with service boundaries, event-driven communication, and resilience patterns. Use when building distributed systems, decomposing monoliths, or implementing microservices.
80
54%
Does it follow best practices?
Impact
97%
1.42xAverage score across 6 eval scenarios
Passed
No known issues
Optimize this skill with Tessl
npx tessl skill review --optimize ./plugins/backend-development/skills/microservices-patterns/SKILL.mdResilient HTTP service client
httpx client used
0%
100%
httpx timeout config
0%
100%
httpx limits config
0%
100%
tenacity retry decorator
100%
100%
retry attempt count
70%
100%
exponential backoff params
50%
100%
circuitbreaker library
0%
100%
circuit failure threshold
0%
100%
circuit recovery timeout
0%
100%
async implementation
100%
100%
raise_for_status called
100%
100%
Kafka event bus implementation
aiokafka producer
100%
100%
aiokafka consumer
100%
100%
JSON value serializer
50%
100%
DomainEvent dataclass
100%
100%
event_id field
100%
100%
event_type field
100%
100%
aggregate_id field
0%
100%
occurred_at field
0%
50%
data field
0%
100%
aggregate_id as Kafka key
16%
100%
topic from event_type
0%
100%
producer started/stopped
100%
100%
asdict used for publish
100%
100%
Saga distributed transaction pattern
SagaStep class
100%
100%
action callable
100%
100%
compensation callable
100%
100%
SagaStatus enum
0%
100%
PENDING status value
0%
100%
COMPLETED status value
0%
100%
COMPENSATING status value
0%
100%
FAILED status value
0%
100%
reverse compensation order
100%
100%
compensation on exception
70%
100%
compensation failures logged/swallowed
100%
100%
context dict threaded through
100%
100%
separate service data
100%
100%
async saga execution
0%
0%
API Gateway parallel aggregation
asyncio.gather used
100%
100%
return_exceptions=True
100%
100%
isinstance Exception check
100%
100%
@circuit decorator used
100%
100%
failure_threshold=5
100%
100%
recovery_timeout=30
100%
100%
HTTPException 503
66%
100%
httpx async client
100%
100%
raise_for_status called
100%
100%
async endpoint
100%
100%
circuitbreaker import
100%
100%
Custom circuit breaker state machine
CircuitState enum
100%
100%
CLOSED state
100%
100%
OPEN state
100%
100%
HALF_OPEN state
100%
100%
failure_threshold default 5
100%
100%
recovery_timeout default 30
0%
100%
success_threshold default 2
100%
100%
OPEN rejects calls
100%
100%
OPEN to HALF_OPEN via timedelta
0%
100%
HALF_OPEN to CLOSED
100%
100%
HALF_OPEN to OPEN on failure
100%
100%
async call method
100%
100%
Service decomposition by business capability
Separate data stores
100%
100%
No cross-service DB writes
100%
100%
Event bus publish on order created
100%
100%
Event bus publish on payment completed
100%
100%
Event bus publish on inventory reserved
100%
100%
DomainEvent dataclass used
0%
100%
event_type field present
0%
100%
aggregate_id field present
0%
0%
Async service methods
0%
100%
Distinct event types
100%
100%
Design notes explain boundaries
100%
100%
70444e5
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.