Pre-computed symbols, calls, imports and inheritance — queried in microseconds.
Single binary. No Python, no Docker, no config.
cartog index .
Walks your repo, extracts symbols, calls, imports, inheritance. Stores everything in a local SQLite file.
cartog watch
Keeps the graph fresh as you edit. Debounced, incremental — stays out of your way.
cartog refs AuthService
Precise answers in microseconds. References, callers, impact analysis, semantic search.
18 commands for search, navigation, and analysis. See full documentation →
Single binary, zero config, zero dependencies.
Single binary + SQLite file. No Docker, no language servers required, no graph databases. cargo install and you're done.
cartog watch auto re-indexes on file changes. Debounced, incremental, near-instant. Always query fresh data.
Keyword search (sub-ms, symbol names) + semantic search (natural language). Local embeddings with optional GPU acceleration via Ollama.
cartog impact --depth 3 traces callers-of-callers instantly. Know the blast radius before you change anything.
Auto-detects language servers on PATH. Boosts edge resolution from ~25% to ~42-81%. Works without them, better with them.
tree-sitter parsing, SQLite storage, local embeddings. No API keys, no telemetry. Works in air-gapped environments.
Pre-compute the structure once, then answer any question in microseconds.
Transitive impact analysis is impossible with grep. cartog impact --depth 3 traces callers-of-callers instantly. Know the blast radius before you change anything.
One refs call returns every caller, importer, and type reference — with file paths and line numbers. No parsing output, no false positives.
tree-sitter parsing, SQLite storage, local embeddings. No API keys, no telemetry, no cloud. Works in air-gapped environments.
| grep / cat / find | Language server (LSP) | Cartog | |
|---|---|---|---|
| Transitive analysis | impossible | limited | impact --depth 3 |
| Query latency | multi-step | seconds | 8-450 μs |
| Setup | none | per-language server | single binary |
| Startup time | instant | seconds to minutes | instant |
| Language coverage | any | 1 per server | 8 languages |
| Semantic search | no | no | local ONNX / Ollama |
| Privacy | local | local | 100% local |
Measured across 13 scenarios, 5 languages. Benchmark suite →
Great for string literals and config values. But grep can't trace call chains, can't do transitive impact analysis, and floods your context with raw text. Cartog returns structured, ranked, deduplicated results — one refs call replaces 6+ discovery steps.
LSPs give perfect precision but require per-language setup, take seconds to start, and only cover one language at a time. Cartog covers 8 languages with one binary and answers in microseconds. When you need LSP precision, cartog uses it as an optional layer.
They solve a similar problem but require a Python runtime, pip dependencies, and virtual environments. Cartog is a single static binary — download and run. It also queries 10-100x faster thanks to compiled Rust + SQLite.
83% fewer tokens per query, 97% recall. Your agent queries the graph instead of grepping blind.
cartog serve exposes 12 tools over stdio. Plug into Claude Code, Cursor, Windsurf, Zed, or any MCP-compatible agent.
The bundled skill teaches your agent when and how to use Cartog — search routing, refactoring workflows, fallback heuristics.
One refs call replaces 6+ grep/cat cycles. Pre-computed graph means structured results — not raw file dumps that burn context window.
| Integration | Setup | What it does |
|---|---|---|
| Claude Code plugin | /plugin marketplace add jrollin/cartog/plugin install cartog@cartog-plugins |
Skill + MCP + auto-setup, all-in-one |
| MCP server | cartog serve --watch --rag |
12 tools over stdio, live index + semantic search |
| Agent skill | npx skills add jrollin/cartog |
Behavioral rules for any compatible agent |
| CLI (any agent with bash) | cargo install cartog |
Direct commands — works with any tool-using LLM |
See MCP Server docs and Agent Skill docs for per-client setup (Claude Desktop, Cursor, Windsurf, Zed, OpenCode).
Open source, free forever. One command to install.