Repo Atlas logo

Repo Atlas

Community
cathrynlavery
repo-atlas

Build a persistent context system (atlas) for any repository — generates directory maps with entrypoints, documents architecture and module boundaries, traces critical flows, catalogs external dependencies, and creates agent-ready onboarding guides. Use when asked to create a repo map, generate codebase documentation for LLM agents, set up an atlas, or create onboarding docs. Also use when asked to 'map this repo', 'document this codebase', or 'create context docs'.

Overview

Publishercathrynlavery
Repositoryrepo-atlas
Skill namerepo-atlas
Stars
55
Forks
8
Bundled files
4
LicenseMIT
Links
  • Markdown instructions

    A SKILL.md file the model loads on demand, so it only costs tokens when a request actually matches.

  • Works with any LLM

    AI skills are plain Markdown, not provider-specific code, so this works with GPT, Claude, Gemini, Grok, or a local model.

  • 4 bundled files

    Scripts, templates, and references the model can read while it works. Files are read-only and never executed.

  • Open source

    Published by cathrynlavery on GitHub. Read the source before you install it.

Installation

Install the Repo Atlas AI skill in TypingMind to use it with any LLM, or drop it into another agent that reads SKILL.md.

1

Install in TypingMind

TypingMind installs a skill straight from its GitHub folder — it reads SKILL.md, bundles the resource files, and stores the result locally.

  1. Open the app and go to Plugins → Skills.
  2. Choose "Install from GitHub".
  3. Paste the skill folder URL below and confirm.
    https://github.com/cathrynlavery/repo-atlas/tree/main
  4. Enable the skill in any chat where you want it available.
Plugins → Skills → Add skill → From GitHub URL, then paste the folder URL and press Continue.
2

Install in another agent

Any agent that reads the Agent Skills format can use this skill — copy the folder into that agent's skills directory.

Claude Code — .claude/skills
git clone --depth 1 https://github.com/cathrynlavery/repo-atlas.git \
  .claude/skills/repo-atlas
Restart Claude Code after copying so it picks up the new skill.

Use it in TypingMind

Enable Repo Atlas in any TypingMind chat and the model takes it from there. Its name and description sit in the system prompt, and the moment a request matches, the model loads the full instructions itself — you never invoke it by hand, and it costs no tokens until it is actually used.

The model loads Repo Atlas on its own as soon as a request matches it.

Works with any AI model

AI skills are plain Markdown instructions rather than provider-specific code, so Repo Atlas is not tied to the model it was written for. Install it once in TypingMind and use it with GPT-5, Claude, Gemini, Grok, DeepSeek, Mistral, Llama, or a local model you run yourself — all on your own API keys.

  • Loaded only when it is needed

    The system prompt carries just the name and description. The instructions are fetched on the first matching request, so an idle skill costs nothing.

  • Switch models mid-chat

    Because the skill is instructions rather than code, changing model does not break it — the next model reads the same SKILL.md.

Skill instructions

This is the SKILL.md content the model loads. Read it before installing — a skill is instructions your model will follow.

Repo Atlas

Build an in-repo persistent context system so engineers and LLM agents can understand any codebase quickly with minimal searching.

Hard Constraints

  • Do NOT change product/runtime behavior
  • No paid/hosted tooling — everything lives in the repo
  • Zero or minimal dependencies (Python 3 standard library only)
  • All generated content must reflect real repo specifics, not generic filler

Workflow

Phase 1: Reconnaissance

Before writing anything, understand the repo:

  1. Read the top-level directory structure
  2. Identify the repo type (app, backend/API, library, monorepo, CLI, infrastructure)
  3. Identify the primary language(s) and framework(s)
  4. Find entrypoints, build configs, CI files
  5. Read 5-10 key files to understand architecture patterns

Phase 2: Run the Generator Script

Copy scripts/generate_atlas.py (bundled with this skill) to the repo at scripts/atlas/generate_atlas.py. Then customize and run it:

  1. Copy the script to the target repo
  2. Review and adjust the configuration section at the top:
    • IGNORE_NAMES — add repo-specific directory names to ignore (exact segment match)
    • TREE_ANNOTATIONS — add short descriptions for key directories
    • ENTRYPOINT_NAMES — add framework-specific entry filenames
    • ENTRYPOINT_PATH_PATTERNS — add path-based patterns (fnmatch style, e.g., cmd/*/main.go)
    • ENTRYPOINT_CONTENT_MARKERS — add code markers that identify entry points
    • CONVENTIONAL_COMMITS — adjust if repo uses different commit conventions
    • CHANGELOG_DAYS — change the changelog lookback window (default: 14)
  3. Run: python3 scripts/atlas/generate_atlas.py --write

This auto-generates:

  • docs/atlas/repo-map.md — directory tree + entrypoints + file stats
  • docs/atlas/08_CHANGELOG_LAST_14_DAYS.md — categorized recent commits

Phase 3: Enhance repo-map.md

After the script generates the skeleton, manually add these sections to repo-map.md:

Router Table — "Where to look for X" (10-15 rows):

markdown
## Where to Look for X

| Task | Start Here |
|------|-----------|
| Fix [domain concept] | `path/to/file.ext` |

Map the top 10-15 tasks someone would do in this repo to specific files.

Danger Zones — fragile files/areas:

markdown
## Danger Zones

| File/Area | Why It's Fragile |
|-----------|-----------------|
| `path/to/file` | Reason |

Phase 4: Write Manual Atlas Docs

Create docs/atlas/ with these files. See references/atlas-templates.md for structure guidance on each.

FileContent Source
00_README.mdHow to use the atlas + agent workflow conventions
01_ARCHITECTURE.mdRead entrypoints, DI setup, module boundaries
02_DOMAIN_MODEL.mdRead models/types, identify state machines
03_CRITICAL_FLOWS.mdTrace top 3-5 user flows through the code
04_STATE_SOURCES_OF_TRUTH.mdIdentify all state stores (DB, cache, files, memory)
05_EXTERNAL_DEPENDENCIES.mdRead package manifests + integration code
06_GOTCHAS.mdLook for race conditions, init ordering, fragile patterns
07_TEST_MATRIX.mdRead test configs, describe how to run tests

Each doc should be 50-150 lines with real paths, real code references, and real gotchas from the codebase. Not generic advice.

Phase 5: Add Agent On-Ramp

Add an atlas section to the repo's CLAUDE.md (or create one) with:

  • A pointer to docs/atlas/ and its purpose
  • A two-agent workflow: Agent A loads repo-map.md → domain-specific doc → source files → implements; Agent B reviews diffs against 06_GOTCHAS.md, verifies flows via 03_CRITICAL_FLOWS.md, and confirms tests per 07_TEST_MATRIX.md
  • Working rules: read atlas before coding, verify critical flows after changes, update atlas docs when architecture changes, run make atlas-generate after structural changes

Phase 6: Add Build Targets

Add to Makefile (create if needed):

makefile
atlas-generate:
	python3 scripts/atlas/generate_atlas.py --write

atlas-check:
	python3 scripts/atlas/generate_atlas.py --check

If the repo uses package.json, also add to scripts:

json
"atlas:generate": "python3 scripts/atlas/generate_atlas.py --write",
"atlas:check": "python3 scripts/atlas/generate_atlas.py --check"

Phase 7: Verify

  1. Run atlas-generate — must complete without errors
  2. Run atlas-check — must exit 0 immediately after generation
  3. Confirm every atlas doc has real file paths and repo-specific content
  4. Confirm no runtime/product code was changed

Output Summary

After completing all phases, report:

  • List of created files
  • How to run atlas generation/check
  • 10-line "How an agent should use this atlas" quick reference

Resources

  • Generator script: See scripts/generate_atlas.py — copy to target repo and customize
  • Doc templates: See references/atlas-templates.md for structure guidance on each manual doc

Bundled files

The model reads these on demand while the skill is loaded. They are exposed as readable files and are never executed.

Frequently asked questions

What does the Repo Atlas AI skill do?

Build a persistent context system (atlas) for any repository — generates directory maps with entrypoints, documents architecture and module boundaries, traces critical flows, catalogs external dependencies, and creates agent-ready onboarding guides. Use when asked to create a repo map, generate codebase documentation for LLM agents, set up an atlas, or create onboarding docs. Also use when asked to 'map this repo', 'document this codebase', or 'create context docs'.

Why use Repo Atlas on TypingMind?

Because you install it once and use it with any model. Repo Atlas is plain Markdown rather than provider-specific code, so the same skill runs on GPT-5, Claude, Gemini, Grok, or a local model — and you can switch model mid-chat without it breaking. TypingMind runs on your own API keys, so you pay providers directly instead of a per-seat subscription, and your skills and chats stay in your own storage.

How do I install Repo Atlas in TypingMind?

Open Plugins → Skills → Install from GitHub in TypingMind and paste https://github.com/cathrynlavery/repo-atlas/tree/main. TypingMind reads its SKILL.md and bundles its files and installs it as a skill you can enable per chat.

Which AI models can use Repo Atlas?

Any model you connect in TypingMind. AI skills are plain Markdown instructions rather than provider-specific code, so GPT, Claude, Gemini, Grok, and local models can all load this skill when a request matches it.

How many AI models can I use with Repo Atlas?

As many as you like. As long as a model supports skills, you can use Repo Atlas with it — GPT, Claude, Gemini, Grok, DeepSeek, Mistral, Llama and more — all on TypingMind with your own API keys.

Is the Repo Atlas AI skill free?

Yes. It is published on GitHub by cathrynlavery under the MIT license. You only pay your own AI provider for the tokens you use.

What are AI skills?

An AI skill is a reusable instruction bundle that teaches an AI model how to do one specific task. It follows the open Agent Skills format: a SKILL.md file with a name and description, plus any scripts, templates or reference files the model may need. The model reads the instructions only when your request matches the skill, so an installed skill costs nothing until it is used.

How are AI skills different from plugins or MCP servers?

A plugin or MCP server gives a model new tools to call — code that runs somewhere and returns a result. An AI skill gives the model knowledge and process instead: how to approach a task, which steps to follow, what good output looks like. Skills are plain Markdown, so they need no server, no API key and no runtime, and they work with any model.

View all

Set up your own AI workspace now

Get notified about new features and future giveaways by subscribing to our newsletter 👇