system-design
Design systems, services, and architectures. Trigger with "design a system for", "how should we architect", "system design for", "what's the right architecture for", or when the user needs help with API design, data modeling, or service boundaries.
By anthropics · 6,833 installs
npx skills add anthropics/knowledge-work-plugins --skill system-design
Source repository · Upstream listing
System Design
Help design systems and evaluate architectural decisions.
Framework
1. Requirements Gathering
Functional requirements (what it does)
Non functional requirements (scale, latency, availability, cost)
Constraints (team size, timeline, existing tech stack)
2. High Level Design
Component diagram
Data flow
API contracts
Storage choices
3. Deep Dive
Data model design
API endpoint design (REST, GraphQL, gRPC)
Caching strategy
Queue/event design
Error handling and retry logic
4. Scale and Reliability
Load estimation
Horizontal vs. vertical scaling
Failover and redundancy
Monitoring and alerting
5. Trade off Analysis
Every decision has trade offs. Make them explicit.
Consider: complexity, cost, team familiarity, time to market, maintainability
Output
Produce clear, structured design documents with diagrams (ASCII or described), explicit assumptions, and trade off analysis. Always identify what you'd revisit as the system grows.