Typed symbol graph
Functions, methods, structs, classes and traits with their calls, imports, inheritance and implements edges - one navigable graph.
glyphtrail indexes your codebase into a queryable graph, then hands coding agents exact answers: who calls this, what depends on it, and the blast radius of changing it - even across repositories. All local, over CLI and MCP.
grep "handleAuth"
27 text matches across 14 files. No idea which are calls, which are comments, or what breaks if you touch it. The agent picks one and hopes.
glyphtrail impact handleAuth
3 direct callers, 1 trait impl, 2 transitive dependents across 2 crates. Exact symbols, exact locations. The agent edits knowing the radius.
Agents are good at reasoning and bad at remembering where things live. glyphtrail gives them ground truth about the code instead of a pile of text matches.
Functions, methods, structs, classes and traits with their calls, imports, inheritance and implements edges - one navigable graph.
Before an agent edits a symbol, ask what touches it. Seed impact from a symbol, a file, or a git diff and walk the transitive radius.
Register your repos once and trace a change across them. When a crate other repos depend on changes, see which break and where.
Backed by a native graph database. Find definitions, callers, callees, neighbours and full-text matches with real graph traversal.
The whole pipeline runs on your machine. .gitignore, .aiignore and an ignore list keep secrets out of the index entirely.
Expose the graph to Claude and any MCP client as first-class tools. Agents query structure instead of guessing from grep.
Native Rust, no runtime. Re-analyze only the files that changed and query the graph in milliseconds.
Rust, Python, JS, TS/TSX, Go, Java, C, C++, C#, Ruby and Kotlin, parsed with Tree-sitter - one query surface across the stack.
A seven-stage pipeline turns a repository into a graph and vector store you can ask questions of. Re-runs are incremental.
Walk the tree, honouring .gitignore and ignore lists.
Tree-sitter turns each file into an AST.
Pull out symbols: functions, types, classes, comments.
Build calls, imports, implements and inheritance edges.
Persist to a native graph database, per repo.
Answer in Cypher over CLI or MCP, in milliseconds.
Federate the graph across repos for blast radius.
Point glyphtrail at a repo and it builds the index. From there, every question is a subcommand - and the same answers stream to your agent over MCP.
$ glyphtrail analyze .
parsed 412 files · 6,840 symbols · 11,209 edges
✓ graph ready in 1.8s
$ glyphtrail impact TokenStore
callers 3 auth::login, auth::refresh, mw::guard
implements 1 trait SessionBacking
dependents 2 crate::api, crate::worker
⚠ 6 symbols in blast radius
$ glyphtrail mcp
MCP server on stdio · query · impact · endpointsStart the MCP server and the graph becomes a toolset. Claude and other MCP clients query structure directly - no copy-pasting code into context.
query Graph lookups: def, callers, callees, neighbours, searchimpact Blast radius for a symbol, file or diff - across reposendpoints The API and route surface of the codebaselist_repos The registry powering cross-repo impactglyphtrail is open source and runs entirely on your machine. Clone it, index a repo, and wire it into your agent over MCP.