CodeGraph
On-demand code intelligence for VEKTOR's agent real AST-level understanding of a repo's functions, classes, and imports across 36 languages, built fresh for each session and thrown away when it ends. No background daemon, no persistent index sitting on disk between runs.
What it is
Most code-graph tools for coding agents build a persistent index on disk with a background watcher keeping it in sync a reasonable trade when one project is open all day, the wrong shape for an agent touching a dozen repos in an afternoon. CodeGraph gates the graph instead of always running it: small single-file edits skip it entirely, multi-file changes trigger a scoped blast-radius build (the touched files plus their imports, a couple of hops deep), and an explicit architecture request triggers a full pass from the project's real entry points.
The graph itself lives entirely in memory, scoped to one agent session. Nothing touches disk, no watcher runs while the agent is idle, and the whole thing is discarded the moment the session ends.
web-tree-sitter, not native tree-sitter bindings there's no per-platform compile step, and the same code path runs identically on Windows, macOS, and Linux.
Agent Tab where the graph shows up
CodeGraph feeds directly into VEKTOR's Agent Tab: a three-column layout for the tool-using agent, with a chat thread on the left, a file-tree / diff-viewer / docked terminal in the centre, and a live memory-recall rail on the right.
- A RUN / SEND composer starts a new agent run, or, while one's already active, injects a live chat interrupt instead of queuing a second run.
- Per-tool allow/ask/deny gating writes and code execution default to “ask”, reads and search default to “allow”, with an in-panel approval modal on anything gated.
- Every write runs a syntax self-check (
node --check/py_compile/JSON.parse, matched to the file) the moment it happens, instead of a bad edit only surfacing on the next build. - The CODEMAP panel shows exactly what the agent scoped its context to this session file count, hop depth, whether the reverse-dependency index was already warm.
36-language grammar support, fetched only when needed
CodeGraph's tree-sitter backend covers 36 languages, but none of them ship as bytes inside the SDK install. Instead, each language's grammar is fetched, verified, and cached locally the first time a file in that language actually shows up in a repo.
| Step | What happens |
|---|---|
| 1. Detect | A file extension in the repo maps to a language in a pinned manifest shipped inside the SDK itself. |
| 2. Check cache | If that language's grammar is already cached locally and its hash still matches the manifest, it loads instantly no network call. |
| 3. Fetch | If not cached, the grammar is downloaded from a single pinned source over HTTPS. No inbound ports, no listener outbound only, same as any other package download. |
| 4. Verify | The downloaded file's SHA-256 is checked against the hash pinned in the manifest. A mismatch is rejected outright never cached, never loaded. |
| 5. Cache | Once verified, the grammar is written to a local cache directory with restrictive file permissions, ready for instant reuse on every future run. |
npm install, so the common case feels instant without any grammar bytes shipping inside the package itself. Everything else Rust, Java, Kotlin, Ruby, C++, and 20-plus more stays out of the way until a repo actually needs it.
Getting started
CodeGraph and the Agent Tab ship in v1.8.0. Upgrade at any time:
npm install -g ./vektor-slipstream-1.8.0.tgz
No config changes are required CodeGraph runs automatically behind the Agent Tab and the CODEMAP panel once you're on v1.8.0.
Next steps
See the Memory Transparency guide for how the same verify-before-you-trust principle applies to stored memory, the Faraday-Gate guide for the security layer sitting in front of every MCP tool call, or the v1.8.0 changelog for the full release.