Your agent sees files. Not the system.
A real codebase is tens of thousands of symbols tangled across files, packages, and repos. Agents that grep their way through it miss dependencies, break call chains, and ship blind edits.
Agents that read flows, not files.
GitNexus lets the model walk resolved execution flows instead of grepping file after file. On SWE-bench Verified (a single-repo benchmark that can't even exercise multi-repo graphs or impact analysis), reading process-by-process alone held the solve rate at exact parity while cutting 30% of tokens. The savings are a side effect of reading code the right way.
Every relationship, resolved deterministically.
GitNexus parses every file with Tree-sitter and resolves imports, call chains, field types, and return types across the codebase: user.address.getCity().save() resolves at every hop. No embedding guesswork. A knowledge graph, precomputed.
Clustering reveals the architecture.
Leiden community detection groups symbols into functional clusters, scored by cohesion and modularity. Your auth flow, your billing engine, your ingestion pipeline. Discovered, not documented.
Know the blast radius before you edit.
Change one function and GitNexus traces every downstream caller, grouped by depth with confidence scores. detect_changes maps your git diff to affected execution flows before you commit.
Impact analysis across repositories.
Group repos into one unified graph. Cross-repo edges connect your API to its consumers, so a breaking change in one service surfaces in every dependent repo before it ships.
One query. The whole system.
Agents query hundreds of repos as one graph and get process-level answers: callers, execution flows, blast radius, in a few compact lines instead of pages of file dumps. More accurate context, radically fewer tokens, and an answer to what breaks before it does.
Every analysis, precomputed.
