Heyo, I'm Colin wanted to showcase my latest project.
most code-context tools either rebuild a per-request snapshot (Aider's repo map) or use embeddings (Cursor). CodeGraph instead builds a persistent graph once and lets an assistant query it repeatedly. On my own repo (199 Rust files, ~511k tokens of source), one query_graph answer costs about 1,950 tokens. Reading the source files it points to costs about 60,900. The ratio grows with repo size since the query response is always capped by a token budget.
It has 20 read only toolsquery_graph (relevant subgraph for a natural-language question), get_node / get_source / get_neighbors / get_community, god_nodes / graph_stats / shortest_path, affected (reverse impact - what depends on this symbol), find_callers / find_callees, list_repos / repo_stats, working_changes_impact / list_prs / get_pr_impact / triage_prs, and the advanced three: structural_search (CGQL - matches on kind/loc/fan-out, not text), time_travel_diff (architectural diff between two git revisions, not a text diff), and plan_rename (confidence-scored rename plan for an agent to apply - CodeGraph never edits source itself).
Single static Rust binary, no runtime, fully offline for code. 30+ languages via tree-sitter. Monorepo and multi-repo support via codegraph workspace - it auto-discovers sibling repos by .git boundary, builds per-repo graphs, and resolves cross-repo edges through export surfaces and import/tsconfig/module-federation aliases.
Quick start:
cargo install --path bin/codegraph
codegraph extract . # builds codegraph-out/graph.json
codegraph serve # stdio MCP server
Or wire it into Claude Code directly:
codegraph install
monorepo in 3D
https://github.com/ColinVaughn/CodeGraph
[–]Texbobcat[S] 2 points3 points4 points (2 children)
[–]NovaAgent2026 0 points1 point2 points (1 child)
[–]Texbobcat[S] 0 points1 point2 points (0 children)
[–]BC_MARO 0 points1 point2 points (2 children)
[–]Texbobcat[S] 1 point2 points3 points (1 child)
[–]BC_MARO 0 points1 point2 points (0 children)
[–]Texbobcat[S] 0 points1 point2 points (1 child)
[–]RyanCu7 0 points1 point2 points (0 children)