Architecture Explainer

Reads a codebase or system description and produces a clear, structured architecture overview with diagrams.

8 stars

Best use case

Architecture Explainer is best used when you need a repeatable AI agent workflow instead of a one-off prompt.

Reads a codebase or system description and produces a clear, structured architecture overview with diagrams.

Teams using Architecture Explainer should expect a more consistent output, faster repeated execution, less prompt rewriting.

When to use this skill

  • You want a reusable workflow that can be run more than once with consistent structure.

When not to use this skill

  • You only need a quick one-off answer and do not need a reusable workflow.
  • You cannot install or maintain the underlying files, dependencies, or repository context.

Installation

Claude Code / Cursor / Codex

$curl -o ~/.claude/skills/architecture-explainer/SKILL.md --create-dirs "https://raw.githubusercontent.com/Notysoty/openagentskills/main/skills/architecture-explainer/SKILL.md"

Manual Installation

  1. Download SKILL.md from GitHub
  2. Place it in .claude/skills/architecture-explainer/SKILL.md inside your project
  3. Restart your AI agent — it will auto-discover the skill

How Architecture Explainer Compares

Feature / AgentArchitecture ExplainerStandard Approach
Platform SupportNot specifiedLimited / Varies
Context Awareness High Baseline
Installation ComplexityUnknownN/A

Frequently Asked Questions

What does this skill do?

Reads a codebase or system description and produces a clear, structured architecture overview with diagrams.

Where can I find the source code?

You can find the source code on GitHub using the link provided at the top of the page.

SKILL.md Source

# Architecture Explainer

## What this skill does

This skill directs the agent to explore a codebase or system description and produce a clear, structured architecture overview. It maps out layers, major components, data flows, and external dependencies, then renders ASCII diagrams showing how the pieces connect. The result is a document a new engineer could read in 10 minutes and understand how the system works.

Use this when onboarding new team members, preparing for an architecture review, creating documentation for a system you inherited, or clarifying your own mental model before a large refactor.

## How to use

### Claude Code / Cline

Copy this file to `.agents/skills/architecture-explainer/SKILL.md` in your project root.

Then ask:
- *"Use the Architecture Explainer skill to document this entire repo."*
- *"Explain the architecture of the `server/` directory using the Architecture Explainer skill."*
- *"I'll describe our system. Use the Architecture Explainer skill to turn it into a structured overview."*

### Cursor

Add the instructions below to your `.cursorrules` or paste them into the Cursor AI pane before asking for the architecture overview.

### Codex

Provide a directory listing or paste key files and ask Codex to follow the instructions below to produce the architecture document.

## The Prompt / Instructions for the Agent

When asked to explain or document an architecture, follow these steps:

### Step 1 — Explore the codebase

Start by reading:
1. The root directory listing
2. `package.json`, `pyproject.toml`, `go.mod`, or the equivalent dependency manifest
3. Entry point files (e.g., `main.ts`, `index.ts`, `app.py`, `cmd/main.go`)
4. Top-level directory names and their `index` or `README` files if present
5. Any existing architecture or design docs

Do not read every file. Use the directory structure and entry points to infer the layering.

### Step 2 — Identify the major components

Extract:
- **Layers**: presentation, business logic, data access, infrastructure
- **Services or modules**: each significant unit of functionality
- **External dependencies**: databases, caches, third-party APIs, message queues
- **Entry points**: HTTP routes, CLI commands, event listeners, cron jobs
- **Shared utilities**: auth, logging, config, error handling

### Step 3 — Map the data flow

For the most important 2–3 user-facing operations, trace:
- Where the request enters the system
- Which layers or modules it passes through
- What data is read or written and where
- Where the response is assembled and returned

### Step 4 — Produce the architecture document

Format the output as follows:

```markdown
# Architecture Overview — [Project Name]

## System Summary
[2–3 sentences. What does this system do? What are the key technical choices (language, framework, DB)?]

## Layer Diagram

[ASCII diagram showing the main layers top-to-bottom, e.g.:]

┌─────────────────────────────────┐
│         Client / Browser        │
└────────────────┬────────────────┘
                 │ HTTP / REST
┌────────────────▼────────────────┐
│        Express API Server       │
│  routes/ → controllers/ → ...   │
└──────┬─────────────┬────────────┘
       │             │
┌──────▼──────┐ ┌────▼────────────┐
│  PostgreSQL  │ │  Redis Cache    │
└─────────────┘ └─────────────────┘

## Component Breakdown

### [Component Name]
- **Location**: `src/payments/`
- **Responsibility**: [1–2 sentences]
- **Depends on**: [List of other components or external services]
- **Depended on by**: [Who calls this]

[Repeat for each major component]

## Key Data Flows

### [Flow name, e.g., "User places an order"]
1. Request arrives at `POST /api/orders`
2. `OrderController` validates the request body
3. `OrderService` runs business logic and calls `PaymentService`
4. `PaymentService` calls Stripe API
5. On success, `OrderRepository` writes to `orders` table
6. Response returned to client

[Repeat for 2–3 key flows]

## External Dependencies

| Dependency | Purpose | Where integrated |
|------------|---------|-----------------|
| PostgreSQL | Primary data store | `server/db/` |
| Redis | Session cache | `server/cache/` |
| Stripe | Payment processing | `server/services/payment.ts` |

## What is NOT covered here
[Note any parts of the system this document doesn't address, e.g., "Worker queue jobs not documented"]
```

### Step 5 — Validate your understanding

After writing the document, re-read the entry point files and check that every major path through the system is accounted for. If something doesn't fit your model, revise the model — don't ignore the discrepancy.

## Example

**Input to Agent:**
> "Use the Architecture Explainer skill on this repo. Here's the directory tree:
> ```
> src/
>   api/routes/
>   api/controllers/
>   services/
>   db/repositories/
>   workers/
> client/
>   pages/
>   components/
> ```"

**Output from Agent:**

> # Architecture Overview — MyApp
>
> ## System Summary
> MyApp is a full-stack web application built with Node.js/Express on the backend and React on the frontend. It uses PostgreSQL for persistence and background workers for async processing.
>
> ## Layer Diagram
>
> ```
> ┌──────────────────────────┐
> │   React Client (client/) │
> └────────────┬─────────────┘
>              │ HTTP/JSON
> ┌────────────▼─────────────┐
> │ Express API (src/api/)   │
> │  routes/ → controllers/  │
> └──────┬───────────────────┘
>        │
> ┌──────▼───────────────────┐
> │ Services (src/services/) │
> └──────┬───────────────────┘
>        │
> ┌──────▼───────────────────┐  ┌──────────────────┐
> │ Repositories (src/db/)   │  │ Workers           │
> └──────┬───────────────────┘  │ (src/workers/)    │
>        │                      └──────────────────┘
> ┌──────▼───────────────────┐
> │       PostgreSQL         │
> └──────────────────────────┘
> ```
>
> ## Component Breakdown
>
> ### API Routes
> - **Location**: `src/api/routes/`
> - **Responsibility**: Maps HTTP methods and paths to controller functions
> - **Depends on**: Controllers
>
> ### Services
> - **Location**: `src/services/`
> - **Responsibility**: Contains all business logic; orchestrates calls between repositories and external APIs
> - **Depends on**: Repositories, external APIs
> - **Depended on by**: Controllers, Workers

## Notes

- For very large repos, ask the agent to focus on one service or one top-level directory at a time.
- If you have an existing architecture doc, paste it in and ask the agent to update it rather than writing from scratch.
- ASCII diagrams can be copied into tools like Mermaid or draw.io for polish.

Related Skills

Unit Test Writer

8
from Notysoty/openagentskills

Generates comprehensive unit tests for any function or module with edge cases.

Unit Test Improver

8
from Notysoty/openagentskills

Reviews existing unit tests for gaps, weak assertions, and missing edge cases, then rewrites them to be more robust.

Troubleshooting Guide Builder

8
from Notysoty/openagentskills

Builds a structured troubleshooting guide with symptom → cause → fix format for any tool or system.

Tech Debt Auditor

8
from Notysoty/openagentskills

Identifies and prioritizes technical debt in a codebase with an effort/impact matrix.

Technical Blog Post Writer

8
from Notysoty/openagentskills

Writes engaging, accurate technical blog posts targeted at developer audiences.

Stack Trace Analyzer

8
from Notysoty/openagentskills

Interprets error stack traces to pinpoint root cause, explain what went wrong, and suggest fixes.

SQL Query Optimizer

8
from Notysoty/openagentskills

Reviews SQL queries for performance issues and rewrites them with optimized execution plans.

Sprint Summary Generator

8
from Notysoty/openagentskills

Converts a list of completed tickets or commits into a clear sprint summary for stakeholders.

Social Post Thread Writer

8
from Notysoty/openagentskills

Converts a blog post, idea, or document into an engaging Twitter/X or LinkedIn thread with hooks and CTAs.

SEO Metadata Generator

8
from Notysoty/openagentskills

Generates optimized title tags, meta descriptions, Open Graph tags, and structured data for any web page.

SEO Content Optimizer

8
from Notysoty/openagentskills

Analyzes and rewrites content to maximize search engine visibility without sounding robotic.

SDK Quickstart Writer

8
from Notysoty/openagentskills

Generates a concise, copy-paste-ready quickstart guide for any SDK or library.