Help us improve
Share bugs, ideas, or general feedback.
Share bugs, ideas, or general feedback.
Share bugs, ideas, or general feedback.
By jrollin
Navigate codebases via call graphs, definitions, and dependency tracing across multiple languages, with structured onboarding reports and pre-flight refactoring analysis that maps blast radius and risks
npx claudepluginhub jrollin/cartog --plugin cartogProduce a structured onboarding report for a codebase. Use when a developer asks "help me understand this project", "onboard me", "what does this codebase do", "give me an overview", or needs to get up to speed on an unfamiliar codebase. Analyzes architecture, key modules, entry points, data flow, and conventions.
Comprehensive pre-flight analysis before a refactoring. Use when a developer wants a full blast radius report before changing a symbol, module, or file — not for quick one-off queries like "what calls X?" (the cartog skill handles those). Triggers: "is it safe to change X?", "what breaks if I rename X?", "blast radius of X", "can I delete X?", "assess the impact of changing X", "pre-flight check for refactoring X". Produces a go/no-go report with affected files, risk level, and a checklist.
Install or upgrade the cartog binary to match the plugin's pinned version. Use when the user types /cartog-install, or asks to "install cartog", "update cartog", "fix cartog setup", "retry cartog install", or when the cartog MCP server failed to start because the binary is missing.
Code graph navigation, semantic code search, and impact analysis. Use when the user asks "where is X defined?", "what calls X?", "who imports X?", "what depends on X?", "how is X used?", "where is X called from?", "what breaks if I change X?", "is it safe to change/delete X?", "help me refactor X", "show me the call graph", "trace the execution flow", "find all usages of X", "find code related to...", "show me how X works", "show me the X implementation", "show file structure", "list all functions/classes in a file", "show the inheritance tree", "show class hierarchy", or needs to navigate code, locate definitions, search code by concept or behavior, trace dependencies, assess blast radius of changes, explore how a feature is implemented, support refactoring (rename, extract, move, delete), or explore an unfamiliar codebase. Supports Python, TypeScript/JavaScript, Rust, Go, Ruby, Java, PHP, Dart, Swift, Kotlin, and Markdown documents.
Uses power tools
Uses Bash, Write, or Edit tools
Share bugs, ideas, or general feedback.
Own this plugin?
Verify ownership to unlock analytics, metadata editing, and a verified badge.
Sign in to claimOwn this plugin?
Verify ownership to unlock analytics, metadata editing, and a verified badge.
Sign in to claimBased on adoption, maintenance, documentation, and repository signals. Not a security audit or endorsement.
Graph-first code intelligence for AI agents. SurrealDB knowledge graph + 52 MCP tools replace Read/Grep/Glob with deterministic graph traversal. 80–95% fewer tokens on code context. Rust-native, fully local.
AST knowledge graph for intelligent code navigation — auto-indexes your codebase and provides semantic search, call graph traversal, HTTP route tracing, and impact analysis via MCP tools
Codebase intelligence — semantic search workflows, dependency graph analysis, and context artifact exploration for SocratiCode
Tree-sitter code-map + git context MCP server. Use for navigating large or unfamiliar codebases: outline files, find references/callers, search symbols, walk recent history, blame and diff at the symbol level.
Local codebase intelligence + change-safety gates for coding agents. Pre-indexes your repo's symbols, call graph, deps, and git history into SQLite (28 languages, 100% local, zero API keys), then exposes a lean 16-tool MCP core preset: graph-precise search, callers/impact blast radius, coupling, dead code, taint reachability, and pre-merge verify/critique gates that catch regressions, broken references, AI-slop duplication, and convention drift before they ship.
Semantic code search for Claude Code. Automatically indexes your project and provides intelligent search capabilities.
Spec driven and quality best practice
Map your codebase. Navigate by graph, not grep.
~280 tokens per query vs ~1,700 for grep+read · 97% recall · 8 µs–20 ms latency · 12 languages.
Cartog pre-computes a code graph — symbols, and the calls, imports, and inheritance between them — so you can query structure instantly instead of grepping for text. Ask "who calls this?", "what breaks if I change it?", or "find the auth logic" and get a ranked, structured answer in microseconds.
Use it from the CLI for day-to-day navigation, or as an MCP server so AI agents query the graph instead of flooding their context with raw file dumps — at a fraction of the token cost. One static binary, one SQLite file. No Python, no pip, no Docker, no cloud: 100% local by default.

curl -fsSL https://jrollin.github.io/cartog/install.sh | sh # or: cargo install cartog
cd your-project
cartog init # 1. scaffold .cartog.toml
cartog index # 2. build the code graph
That's it for CLI use. Two commands.
If you want MCP wired into your editor (Claude Code, Cursor, VS Code, Claude Desktop, Codex CLI, Gemini CLI, OpenCode, Windsurf, Zed, Antigravity, Kiro, Hermes Agent), add one more:
cartog ide # optional — only if you want editor integration
All three commands are idempotent.
Now query:
cartog search validate # find symbols by name (sub-ms)
cartog refs validate_token # who calls this? (< 500 µs)
cartog impact validate_token # what breaks if I change it? (< 20 ms)
cartog outline src/auth.py # file structure, no cat (< 15 µs)
Wiring MCP is half the job. The other half is telling the agent when to
prefer cartog over grep + read. Drop the snippet from
docs/agent-snippet.md into your project's AGENTS.md,
CLAUDE.md, .cursor/rules/, or equivalent, and the agent will route
"where is X?" / "who calls X?" / "what breaks if I change X?" through
cartog's 16 MCP tools instead of flooding context with raw text.
Every code navigation tool makes you choose: fast but shallow (grep), or precise but slow (language servers). Cartog gives you both.
| grep / cat / find | Language servers | Cartog | |
|---|---|---|---|
| Query speed | depends on codebase size | seconds to start | 8-450 µs |
| Transitive analysis | impossible | partial | impact --depth 5 |
| Setup | none | per-language config | one binary, zero config |
| Languages | all (text) | one per server | 12 languages, one tool |
| Token cost (LLM context) | ~1,700 tokens/query | n/a | ~280 tokens/query |
| Recall (completeness) | 78% | ~100% | 97% * |
| Privacy | local | local | 100% local |
Measured across 13 scenarios, 10 languages (benchmark suite).
* 97 % recall requires a matching language server on PATH. The default build ships LSP support; heuristic-only resolution (no server found, or
--no-lsp) lands around 25–37 %, with specifics varying by language.
Pre-computed graph means no re-reading files, no multi-step discovery.
cartog search parse # symbol name lookup (sub-ms)
cartog refs UserService # all callers, importers, inheritors
cartog callees authenticate # what does this function call?
cartog impact SessionManager # blast radius — callers-of-callers, depth N
cartog hierarchy BaseService # inheritance tree
cartog deps src/routes/auth.py # file-level imports
cartog changes --commits 5 # symbols affected by recent git commits
cartog map --tokens 4000 # codebase overview, ranked by centrality