# code-mapping
> Creates and navigates hierarchical code maps for AI agent and human orientation. Use when bootstrapping understanding of a codebase, creating documentation for navigation, or validating map integrity.
- Author: Marcel Hild
- Repository: durandom/skills
- Version: 20260206095937
- Stars: 0
- Forks: 0
- Last Updated: 2026-02-06
- Source: https://github.com/durandom/skills
- Web: https://mule.run/skillshub/@@durandom/skills~code-mapping:20260206095937
---
---
name: code-mapping
description: Creates and navigates hierarchical code maps for AI agent and human orientation. Use when bootstrapping understanding of a codebase, creating documentation for navigation, or validating map integrity.
---
**Maps are hierarchical**: L0 (architecture) links to L1 (domains) which link to L2 (modules) which link to L3 (source code). Always start at L0 and drill down as needed.
**Anchors enable grep navigation**: Headings contain `[Lx:identifier]` markers. Find any section with `grep "\[L1:auth\]" docs/map/`.
**Size limits enforce abstraction**:
- L0: 500 lines max (system overview)
- L1: 300 lines max (domain docs)
- L2: 200 lines max (module docs)
If a doc exceeds its limit, split it into the next level down.
**Code is truth, map is derivative**: When code and map conflict, the code wins. Update the map to reflect reality.
**Bootstrap pattern**: Agents read README.md first, then ARCHITECTURE.md, then relevant domain docs based on task.
**Route based on user intent** (match first):
| User says | Action |
|-----------|--------|
| "explore", "read", "understand", "navigate", "find", "where is" | Read `workflows/explore.md`, then follow it |
| "create", "generate", "new", "build", "document", "map" | Read `workflows/create.md`, then follow it |
| "validate", "check", "verify", "lint" | Run: `uv run python $SKILL_PATH/scripts/code_map.py validate ` |
**If intent is ambiguous**, ask:
> What would you like to do?
>
> 1. **Explore** - Navigate existing map to understand codebase
> 2. **Create** - Generate a new code map
> 3. **Validate** - Check map integrity
**Directory structure**:
```
docs/map/
├── README.md # Entry point + domains index
├── ARCHITECTURE.md # L0: System overview
└── domains/ # L1: Domain docs
├── auth.md
└── api.md
```
**Anchor format**: `## [L1:identifier] Heading Text`
**Code link format**: `` [`symbol`](path/to/file.py#L42) ``
**Cross-reference format**: `[Domain Name](domains/name.md)`
**Domain Knowledge** (`references/`):
| Reference | Purpose |
|-----------|---------|
| format-spec.md | Format rules for anchors, links, and size limits |
| examples/ | Input/output examples (l0-architecture.md, l1-domain.md, l2-module.md, readme.md) |
| domains.md | What domain docs should capture |
## Running the Scripts
The scripts use Python 3.11+ stdlib only (no external dependencies).
`$SKILL_PATH` is the base directory shown at skill load (e.g., `.claude/skills/code-mapping`).
```bash
# Validate an existing map
uv run python $SKILL_PATH/scripts/code_map.py validate
# Generate map skeletons from source
uv run python $SKILL_PATH/scripts/code_map.py generate
```
**Generate command features:**
- Creates one `.md` file per source file (1:1 mapping)
- Uses `` placeholders
- Preserves filled descriptions on subsequent runs
- Reports new sections, removed sections, and unfilled placeholders
**Workflows** (`workflows/`):
| Workflow | Purpose | Status |
|----------|---------|--------|
| explore.md | Navigate existing map to understand codebase | Ready |
| create.md | Generate new map for a codebase | Ready |
**Scripts** (`scripts/`):
| Script | Purpose | Status |
|--------|---------|--------|
| code_map.py | CLI entry point (validate, generate) | Ready |
| generate/ | Map skeleton generation from source | Ready |
| validate/ | Map validation (links, sizes, symbols) | Ready |
A well-executed code map:
- Has valid L0 ARCHITECTURE.md under 500 lines
- Has L1 domain docs under 300 lines each
- All file links resolve to existing files
- All code links have valid file + line number
- All anchors are unique across the map
- No orphan documents (everything linked from parent level)