Skill

system-architect

Design system architecture — microservices vs monolith decisions, layer diagrams, module boundaries, data flow, infrastructure topology, and Mermaid diagrams. Use when the user asks to "design the architecture", "system design", "how should I structure this", "architect this app", "microservices or monolith", or needs to make high-level technical decisions before coding.

From project-orchestrator
Install
1
Run in your terminal
$
npx claudepluginhub vivekmano27/agent-orchestrator --plugin project-orchestrator
Tool Access

This skill is limited to using the following tools:

ReadWriteEditGrepGlob
Supporting Assets
View in Repository
references/patterns-reference.md
Skill Content

System Architect Skill

Design production-grade system architecture with clear diagrams and rationale.

Architecture Decision Process

  1. Understand the constraints — scale, team size, timeline, budget
  2. Choose the pattern — monolith, modular monolith, microservices, serverless
  3. Define module boundaries — by domain, by team, by deployment unit
  4. Design data flow — request lifecycle, event flow, data pipeline
  5. Plan infrastructure — hosting, databases, caches, CDN, monitoring
  6. Document decisions — ADRs with rationale

Pattern Selection Guide

FactorMonolithModular MonolithMicroservicesServerless
Team Size1-53-1510+1-10
TimelineFast deliveryBalancedLong-termFast + scalable
ComplexityLow-MedMediumHighMedium
ScaleThousandsTens of thousandsMillionsVariable
DeploySimpleSimpleComplexAuto
CostLowLow-MedHighPay-per-use

Default recommendation: Start with Modular Monolith unless you have a specific reason not to. You can extract microservices later.

Architecture Document Template

# [Project] — Architecture

## System Overview
[High-level description]

## Architecture Diagram
```mermaid
flowchart LR
    Client[Client App] --> LB[Load Balancer]
    LB --> API[API Server]
    API --> Auth[Auth Module]
    API --> Core[Core Module]
    API --> Notify[Notification Module]
    Core --> DB[(PostgreSQL)]
    Core --> Cache[(Redis)]
    Notify --> Queue[Message Queue]
    Queue --> Email[Email Service]
    Queue --> Push[Push Service]

Module Boundaries

ModuleResponsibilityDependenciesData Ownership
AuthAuthentication, authorization, sessionsNoneusers, sessions
CoreBusiness logic, CRUD operationsAuth[entities]
NotifyEmail, push, SMS notificationsCorenotifications

Data Flow

Request Lifecycle

  1. Client sends request → Load Balancer
  2. LB routes to API Server
  3. Auth middleware validates JWT
  4. Route handler delegates to service
  5. Service executes business logic
  6. Repository queries database
  7. Response returned to client

Infrastructure

ComponentTechnologyHostingPurpose
API[framework][platform]Request handling
DatabasePostgreSQL 16[provider]Primary data store
CacheRedis 7[provider]Session + query cache
CDN[provider]EdgeStatic assets
CI/CDGitHub ActionsGitHubBuild + deploy

Scaling Strategy

  • Vertical: Increase instance size for immediate relief
  • Horizontal: Add instances behind load balancer
  • Database: Read replicas for read-heavy workloads
  • Cache: Redis cluster for session + query caching
  • Queue: Message queue for async operations

## Architecture Decision Record (ADR) Template
```markdown
# ADR-[NNN]: [Title]
**Status:** Proposed | Accepted | Deprecated | Superseded
**Date:** [YYYY-MM-DD]
**Context:** [What is the issue?]
**Decision:** [What was decided]
**Rationale:** [Why this option over alternatives]
**Alternatives Considered:**
1. [Option A] — [why rejected]
2. [Option B] — [why rejected]
**Consequences:**
- [Positive consequence]
- [Negative consequence / trade-off]
Stats
Parent Repo Stars0
Parent Repo Forks0
Last CommitMar 16, 2026