Agent Atlas
Agent Atlas generates a deterministic, static repository map for coding agents. It uses Griffe to extract Python packages, public symbols, signatures, annotations, docstrings, source locations, and local type references without importing the project being mapped.
No LLM calls. No target-code execution. No invented explanations.
Start with MAP.md, follow the package and module pages to the exact symbol,
then open the source. Use deeper graph tools only when relationships or impact
analysis actually matter.
Install
pip install agent-atlas-map
Python 3.11 or later is required. The agent-atlas and repo-map commands are
equivalent; repo-map is retained as a compatibility alias.
Configure and run
Add a minimal configuration to the target repository's pyproject.toml:
[tool.repo-map]
source_roots = ["src"]
root_packages = ["my_package"]
source_roots defaults to ["src"]. When root_packages is omitted, Agent
Atlas discovers importable packages and modules directly below each source
root. Output defaults to .repo-map and MAP.md; the paths and additional
filtering, policy, summary, and watch settings can be configured in the same
table.
# Generate or update the map in the current repository.
agent-atlas build
# Fail when generated files are missing or differ from a fresh render.
agent-atlas check
# Generate once, then rebuild after debounced .py or .pyi source changes.
agent-atlas watch
# Run against another repository.
agent-atlas build --project-root /path/to/project
Output and exit codes
build writes a generated MAP.md at the project root and a .repo-map/
directory containing index.json, package maps, and module maps. check does
not write files.
| Code | Meaning |
|---|---|
| 0 | Build succeeded, or check found current, policy-compliant output. |
| 1 | check found stale, missing, or unexpected generated output. |
| 2 | A configured public-API policy requirement was violated. |
| 3 | Generation, publication, or watch failed. |
| 4 | Command usage or repository-map configuration was invalid. |
| 130 | The process was interrupted. |
Limits and safety
Agent Atlas is static analysis, not runtime introspection. Dynamically created symbols, imports resolved only at runtime, generated source, and information available only through execution may be absent or unresolved in the map.
Builds stage and validate output before publishing. Agent Atlas refuses to
replace output it cannot identify as its own and attempts rollback when a
publication step fails. Each target replacement is atomic on the local
filesystem, but .repo-map/ and MAP.md are separate targets: a process or
filesystem failure between replacements cannot be made globally atomic. Keep
the generated files under version control or regenerate after an interrupted
build. Publication assumes a locally controlled checkout; it does not defend
against another process maliciously replacing target directories during the
publication window.
Development
uv sync --group dev
uv run pytest
uv run ruff check .
uv run mypy
uv build
License
MIT. See LICENSE.
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file agent_atlas_map-0.1.0.tar.gz.
File metadata
- Download URL: agent_atlas_map-0.1.0.tar.gz
- Upload date:
- Size: 58.2 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: uv/0.12.0 {"installer":{"name":"uv","version":"0.12.0","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
b916953fb933d18dd81b571ca01e66e02c7efdffc544eaf6ad1677941e97d767
|
|
| MD5 |
800ccd2eb94c60d88dabfdf686084084
|
|
| BLAKE2b-256 |
70717b1940156f49b99cb2d7d54fc3c5e9ef7fe2663d44354c42c090db64622c
|
File details
Details for the file agent_atlas_map-0.1.0-py3-none-any.whl.
File metadata
- Download URL: agent_atlas_map-0.1.0-py3-none-any.whl
- Upload date:
- Size: 26.4 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: uv/0.12.0 {"installer":{"name":"uv","version":"0.12.0","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
7c4a87705926bdcdb400bcfd014a0002e1db495dc8001e234d2ff3f4e73de1cc
|
|
| MD5 |
647de59e073cc36aaad11980c366e330
|
|
| BLAKE2b-256 |
6d7f3bc717caadc16cdff180f6b521369c447a921352bb135b5c08406d029138
|