agentleFS
nicodiansknicodiansk/turbocharge/skills/atlas/SKILL.md

atlas

Skill2 starsChanged 11 months agoMITView on GitHub

Generate or update a semantic domain map (ATLAS.md) for the project. Maps where to look, entry points, module purposes, key symbols, and integration points. Complements codemap's structural index with the domain knowledge layer.

We split this skill into the rules it gives an agent

16 rules. 0 are common, 10 are distinctive, and 6 are very specific to this project.

  • 0

    Common

    Most of the 8 edited versions we read keep these.

  • 10

    Distinctive

    This author's own choices. Worth a look.

  • 6

    Very specific

    Tied to their project's names, files or tools. Probably skip.

  • Common
  • Distinctive
  • Very specific
  1. Distinctive:

    Do not generate from assumptions or memory.

    line 18
  2. Distinctive:

    If ATLAS.md does NOT exist in the project root → Generate mode

    line 22
  3. Distinctive:

    If ATLAS.md exists → Update mode

    line 23
  4. Distinctive:

    Read project structure (directory listing, key config files)

    line 28
  5. Very specific:

    Read CLAUDE.md (./CLAUDE.md or ./.claude/CLAUDE.md) if it exists — understand what's already documented (don't duplicate it)

    line 29
  6. Distinctive:

    Read entry points (main files, CLI entry, API routers, job schedulers)

    line 30
  7. Distinctive:

    Read domain models (data classes, schemas, database models)

    line 31
  8. Very specific:

    If .codemap/.codemap.json exists in the project root:

    line 36
  9. Very specific:

    Read .codemap/.codemap.json — it contains a manifest with directories (list of indexed paths) and stats (total files, total symbols).

    line 38
  10. Distinctive:

    Use this data to pre-populate:

    line 40
  11. Very specific:

    Create ATLAS.md in the project root following the format in Step 4.

    line 51
  12. Very specific:

    Update stale sections — preserve any manually-added notes (lines starting with 📌)

    line 57
  13. Very specific:

    Update the Last updated date

    line 58
  14. Distinctive:

    Constraint: every section above is a table or bullet list.

    line 109
  15. Distinctive:

    After writing ATLAS.md, compute a directory-listing hash and append it as an HTML comment on the very last line:

    line 116
  16. Distinctive:

    If codemap is not installed, mention: "Consider installing codemap for structural indexing alongside this domain map"

    line 138

“Common” is measured: kept by at least 6 in 10 of the 8 edited versions of this file we could read. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.

Keep what fits and drop the rest. Your version, ready for your agents.
Files
SKILL.md

Atlas — Project Domain Map

Generate or update the semantic domain map for this project.

Announce: "Using atlas to map this project's domain."

The Iron Law

NO ATLAS WITHOUT READING THE CODEBASE FIRST

Do not generate from assumptions or memory. Read the actual code, configs, and docs.

Step 1: Detect Mode

  • If ATLAS.md does NOT exist in the project root → Generate mode
  • If ATLAS.md exists → Update mode

Step 2: Read the Codebase

Regardless of mode:

  1. Read project structure (directory listing, key config files)
  2. Read CLAUDE.md (./CLAUDE.md or ./.claude/CLAUDE.md) if it exists — understand what's already documented (don't duplicate it)
  3. Read entry points (main files, CLI entry, API routers, job schedulers)
  4. Read domain models (data classes, schemas, database models)
  5. Scan integration configs (env files, connection strings, external service clients)

Step 2b: Read Codemap Index (if available)

If .codemap/.codemap.json exists in the project root:

  1. Read .codemap/.codemap.json — it contains a manifest with directories (list of indexed paths) and stats (total files, total symbols).
  2. For each directory in the manifest, read .codemap/<dir>/.codemap.json — each contains files with symbol entries (name, type, lines, language).
  3. Use this data to pre-populate:
    • Module Map — each directory with its file count and key files
    • Key Symbols — pick the 20-30 most important symbols (classes, exported functions) with their file:line-range
  4. You still need to fill in the semantic layer manually: Where to Look (intent→file mapping), Entry Points (which files boot the app), Integration Points (external services), Conventions & Gotchas.

This shortcut reduces atlas generation from ~20 tool calls to ~5. If .codemap/ does not exist, skip this step entirely — fall through to the standard codebase scan in Step 2.

Step 3: Generate or Update

Generate Mode (no ATLAS.md)

Create ATLAS.md in the project root following the format in Step 4.

Update Mode (ATLAS.md exists)

  1. Read existing ATLAS.md
  2. Compare each section against current codebase state
  3. Update stale sections — preserve any manually-added notes (lines starting with 📌)
  4. Update the Last updated date
  5. Report what changed: "Updated: Module Directory (2 new modules), Integration Points (added Redis)"

Step 4: ATLAS.md Format

# ATLAS — [Project Name]

Last updated: YYYY-MM-DD

## Where to Look

| I want to... | Open | Why |
|--------------|------|-----|
| [Intent phrased as user goal] | `path/to/file` | One-line why this is the right file |

## Entry Points

| File | Role | Starts |
|------|------|--------|
| `path/to/main` | CLI / API / Job / Hook | What it boots |

## Module Map

| Directory | One-line purpose | Key files |
|-----------|------------------|-----------|
| `src/module/` | What this module does | `important.ext`, `other.ext` |

## Key Symbols

(20-30 most-referenced; heuristic, not AST-exhaustive.)

| Symbol | File:line-range | Kind |
|--------|-----------------|------|
| `SymbolName` | `path/to/file:10-42` | class / function / const |

## Integration Points

| System | Config key | Path |
|--------|------------|------|
| ServiceName | `ENV_VAR` | `path/to/client` |

## Conventions & Gotchas

- [Non-obvious trap that burned someone]
- [Intentional-looking-wrong pattern]

<!-- 📌-prefixed lines are manual notes, preserved across atlas updates -->
<!-- atlas-hash:XXXXXXXXXXXX -->

Constraint: every section above is a table or bullet list. No prose paragraphs.

Removed from prior format: Data Flows (prose arrows), Domain Model (→ CLAUDE.md), Active Work & Known Issues. Added: Where to Look (intent→file), Key Symbols (heuristic).

Step 5: Write Staleness Hash

After writing ATLAS.md, compute a directory-listing hash and append it as an HTML comment on the very last line:

HASH=$(ls -1 | grep -v -e '^\.codemap$' -e '^node_modules$' -e '^\.git$' -e '^__pycache__$' -e '^\.venv$' -e '^venv$' -e '^dist$' -e '^build$' | sort | md5sum | cut -c1-12)
echo "<!-- atlas-hash:$HASH -->" >> ATLAS.md

This hash is checked by the SessionStart hook to detect structural changes. If the user adds or removes top-level files/directories, the hash will mismatch and the hook will nudge a re-run.

What NOT to Include

ATLAS.md contains facts about the project. Do not include:

  • Rules or instructions for Claude → CLAUDE.md
  • Exhaustive symbol indexes (every class/function) → codemap; Key Symbols is a curated top-30 heuristic, not a full AST dump
  • Full code snippets → reference by file:line path
  • Git history → git log
  • Dependency version lists → package.json / requirements.txt

After Generation

  1. Show the user a summary of what was mapped (section counts)
  2. Commit ATLAS.md
  3. If codemap is not installed, mention: "Consider installing codemap for structural indexing alongside this domain map"
  4. Offer to continue: "Ready to work? What's next?"

Red Flags — STOP

FlagProblem
Generating from memory or assumptionsRead the actual codebase first
Duplicating CLAUDE.md contentATLAS = facts about project, CLAUDE.md = rules for Claude
Including code snippetsReference paths, don't inline code
Skipping modules or directoriesCover the ENTIRE project structure
Writing prose paragraphsUse tables, lists, flow arrows — structured data only
Not checking for existing ATLAS.mdAlways detect mode first

Workflow Position

setup → atlas (recommended after first setup)
[any point] → atlas → [resume work]
wrap → atlas (suggested if major changes were made)

Download now (ZIP)

  • Other versions11 projects use a version of this.

    Word for word · 1

    1. nicodiansk/turboflow★ 2100% same

    Edited · 0

    None found.

    Wrote their own version · 10

    1. ariga/atlas★ 8.8ksame name
    2. simota/agent-skills★ 96same name
    3. sophonfinance-wq/finance-automation-portfolio★ 16same name
    4. jscraik/Agent-Skills★ 9same name
    5. ParkerRex/Skills★ 2same name
    6. Rynaro/magicite★ 2same name
    7. Abbasi-Alain/atlas★ 1same name
    8. nileshteji/skills★ 1same name
    9. YiftachCohen/skills★ 1same name
    10. leaf76/agent-skills★ 0same name

    How matches are found. Word for word: the exact same text. Edited: shares passages with this file (“99% same” means 99% of its five-word phrases also appear here; 10% or more counts). Their own version: similar meaning, or, weakest, the same name. We can’t tell which project had it first. Projects are counted among the 200 most-starred candidates, and mentions are links to the repository we found, up to 50 per site, so both counts are a floor.

  • Used alongsideProjects with it also use openai-docs.

    Other files people use alongside this one.

    Files found in the same public projects as a version of this one, more often than they turn up anywhere else. Each project counts once, large collections count for less, and this file's own repository is left out.
    • OpenAISkill

      openai-docs

      Use when the user asks how to build with OpenAI products or APIs, asks about Codex itself or choosing Codex surfaces, needs up-to-date official documentation with citations, help choosing the latest model for a use case, or model upgrade and prompt-upgrade guidance; use OpenAI docs MCP tools for non-Codex docs questions, use the Codex manual helper first for broad Codex self-knowledge, and restrict fallback browsing to official OpenAI domains.

      Also in 3 projects that use this

  • In this repository10 other files it gives its agents.

Does it work?

Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.

Reviews can't be read right now.

Your trail

Files you open will collect here, so you can find them again.

Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.

Now do this for your own.

Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.