Codemap Config Setup
Goal
Write or improve .codemap/config.json so future Codemap calls stay focused on the code that matters for this repo.
Use this when
.codemap/config.jsonis missing- The existing config looks like a bare bootstrap instead of a real project policy
- Codemap output is dominated by assets, fixtures, generated files, vendor trees, PDFs, screenshots, models, or training data
- The project stack is obvious, but Codemap is not prioritizing the right parts of the repo
Workflow
-
Inspect the repo quickly before writing config
- Run
codemap . - If needed, run
codemap --deps . - Note the stack markers (
Cargo.toml,Package.swift,*.xcodeproj,go.mod,package.json,pyproject.toml, etc.) - Identify large non-code directories and noisy extensions
- Run
-
Decide whether config is missing, boilerplate, or tuned
- Missing: no
.codemap/config.json - Boilerplate: only generic
onlyvalues, no real shaping, no excludes despite obvious noise - Tuned: contains intentional project-specific includes/excludes, depth, or routing hints
- Missing: no
-
Write a conservative code-first config
- Keep primary source-language
onlyvalues when they help - Add
excludeentries for obvious non-code noise - Set a moderate
depthwhen the repo is broad - Avoid overfitting or excluding real source directories
- Keep primary source-language
-
Prefer stack-aware defaults
- Rust: focus
src,tests,benches,examples; de-prioritize corpora, sample PDFs, training data, large generated artifacts - iOS/Swift: focus app/framework source, tests, package/project manifests; de-prioritize
.xcassets, screenshots, snapshots, vendor/build outputs - TS/JS: focus
src,apps,packages,tests; de-prioritizedist,coverage, Storybook assets, large fixture payloads - Python: focus package roots, tests, tool config; de-prioritize notebooks, data dumps, models, fixtures when they overwhelm code
- Go: focus packages, cmd, internal, tests; de-prioritize generated assets, sample data, vendor-like noise
- Rust: focus
-
Preserve user intent
- If config already looks curated, do not replace it wholesale
- Make minimal edits and explain why
-
Verify immediately
- Rerun
codemap . - If the repo still looks noisy, refine
excludeand possiblydepth - Only rerun
codemap --deps .after tree output looks reasonable
- Rerun