Smithery Logo
MCPsSkillsDocsPricing
Login
Smithery Logo

Accelerating the Agent Economy

Resources

DocumentationPrivacy PolicySystem Status

Company

PricingAboutBlog

Connect

© 2026 Smithery. All rights reserved.

    porkbutts

    architecture

    porkbutts/architecture
    Design
    1
    1 installs

    About

    SKILL.md

    Install

    Install via Skills CLI

    or add to your agent
    • Claude Code
      Claude Code
    • Codex
      Codex
    • OpenClaw
      OpenClaw
    • Cursor
      Cursor
    • Amp
      Amp
    • GitHub Copilot
      GitHub Copilot
    • Gemini CLI
      Gemini CLI
    • Kilo Code
      Kilo Code
    • Junie
      Junie
    • Replit
      Replit
    • Windsurf
      Windsurf
    • Cline
      Cline
    • Continue
      Continue
    • OpenCode
      OpenCode
    • OpenHands
      OpenHands
    • Roo Code
      Roo Code
    • Augment
      Augment
    • Goose
      Goose
    • Trae
      Trae
    • Zencoder
      Zencoder
    • Antigravity
      Antigravity
    ├─
    ├─
    └─

    About

    Design technical architecture from a PRD...

    SKILL.md

    Architecture

    Transform a PRD into an implementation-ready architecture document. Read docs/PRD.md, analyze requirements, and produce docs/ARCHITECTURE.md with enough technical clarity to start coding.

    Workflow

    START
      │
      ▼
    ┌─────────────────────────┐
    │ Read docs/PRD.md        │ ◄── Load the PRD into context
    └──────────┬──────────────┘
               │
               ▼
    ┌─────────────────────────┐
    │ Analyze & Clarify       │ ◄── Ask questions if PRD has gaps
    └──────────┬──────────────┘
               │
               ▼
    ┌─────────────────────────┐
    │ Confirm with user       │ ◄── Summarize approach, get approval
    └──────────┬──────────────┘
               │
               ▼
    ┌─────────────────────────┐
    │ Generate Architecture   │ ◄── Write to docs/ARCHITECTURE.md
    └─────────────────────────┘
    

    Step 1: Read the PRD

    Read docs/PRD.md to understand:

    • What the product does and who uses it
    • User scenarios and flows
    • Tech stack specified (or constraints)
    • Scope boundaries (MVP vs future)

    If docs/PRD.md doesn't exist, ask the user to provide requirements or suggest using the product-design skill first.

    Step 2: Analyze & Clarify

    Identify gaps that would block architecture decisions:

    • Ambiguous scaling requirements?
    • Missing auth/authorization details?
    • Unclear data relationships?
    • Integration specifics missing?

    Ask targeted questions. Don't over-ask—only what's needed to make architecture decisions.

    Step 3: Confirm with User

    Before generating, summarize:

    • The high-level approach (e.g., "monolith with clear module boundaries" vs "microservices")
    • Key technical choices and why
    • Any tradeoffs being made

    Ask if they're ready to proceed or want to adjust the approach.

    Step 4: Generate Architecture Document

    Write to docs/ARCHITECTURE.md (create directory if needed) using the template below.

    Architecture Document Template

    # [Product Name] - Architecture
    
    ## Overview
    
    [2-3 sentences: architectural style, key patterns, deployment model]
    
    ## High-Level Architecture
    
    [ASCII diagram showing major components and relationships]
    

    ┌─────────────┐ ┌─────────────┐ ┌─────────────┐ │ Client │────▶│ Server │────▶│ Database │ └─────────────┘ └─────────────┘ └─────────────┘

    
    ### Components
    | Component | Responsibility | Technology |
    |-----------|---------------|------------|
    | [Name] | [What it does] | [Stack] |
    
    ## Tech Stack Decisions
    
    | Decision | Choice | Rationale |
    |----------|--------|-----------|
    | Frontend | [e.g., Next.js] | [Why this fits the requirements] |
    | Backend | [e.g., Node + Express] | [Why] |
    | Database | [e.g., PostgreSQL] | [Why] |
    | Auth | [e.g., Supabase Auth] | [Why] |
    | Hosting | [e.g., Vercel + Railway] | [Why] |
    
    ## Directory Structure
    

    project/ ├── src/ │ ├── app/ # [Purpose] │ ├── components/ # [Purpose] │ ├── lib/ # [Purpose] │ └── ... ├── public/ ├── tests/ └── ...

    
    ### Key Directories Explained
    - `src/app/` - [What goes here and why]
    - `src/lib/` - [What goes here and why]
    
    ## Key Abstractions
    
    ### [Abstraction 1 Name]
    **Purpose:** [What problem it solves]
    **Interface:** [Key methods/properties]
    **Used by:** [Which parts of the system]
    
    ## Data Flow
    
    [Describe data flow for key scenarios]
    
    1. **[Scenario]**: [Step-by-step flow]
    
    ## What NOT to Over-Engineer
    
    Keep these simple for MVP:
    
    | Area | Keep Simple | Avoid |
    |------|-------------|-------|
    | Auth | Use built-in auth provider | Custom JWT infrastructure |
    | State | React state/context | Redux unless proven necessary |
    | API | Simple REST endpoints | GraphQL unless you need it |
    | Database | Single database | Read replicas, sharding |
    | Caching | None initially | Redis until you measure need |
    | Validation | Validate at boundaries | Defensive checks everywhere |
    
    ## Future Considerations
    
    [Things deliberately deferred that may influence future architecture]
    
    - [Future need] → [How current architecture accommodates it]
    

    Guidelines

    Keep it buildable: Every section should reduce ambiguity. A developer reading this should know where to start.

    Match complexity to scope: MVP architecture should be simple. Don't design for scale you don't have.

    Be specific: "Use React" is less useful than "Next.js App Router with server components for data fetching."

    Justify decisions: Every tech choice needs a reason tied to requirements, not preference.

    Name anti-patterns: Explicitly calling out what NOT to build prevents scope creep.

    Recommended Servers
    Draw.io
    Draw.io
    tldraw
    tldraw
    Nanobanana
    Nanobanana
    Repository
    porkbutts/porkbutts-n-taters
    Files