Getting oriented
Where it runs
One long-lived host holds the index; clients connect to it and disconnect freely. Where that host lives is your choice, and the answer changes nothing about how you address it.
Three shapes
On your machine
A single native binary, no runtime to install and no container required. Every agent on the machine shares one warm index — the parse is paid for once and each of them gets the whole codebase.
In a container
A multi-arch image, published with every release, paired with a compose file for the host and its volumes.
On your own infrastructure
The host runs inside your network; teammates, CI, and hosted agents reach it through the uplink, with your own identity provider doing the door policy. The code never leaves where you put it.
What actually needs a network
Worth being exact about, because for a tool that reads a whole codebase this is the first question.
| Capability | What it needs from the network |
|---|---|
| Indexing and parsing | None. Files are discovered, parsed, and stored locally in DuckDB. |
| The graph and all SQL | None. Every view, macro, and table function runs against the local database. |
| Addresses, globs, fragments | None. Symbol and line resolution is a local graph operation. |
| Text search — grep, regex, full text | None. |
| Git — history, blame, changes | None. Read live from your checkout. |
| Semantic search | None. A local embedding model ships inside the binary, so a fresh install has it with no account and no download. |
| Higher-precision embeddings and reranking | A cloud account. Without one, search falls back to its local ranking — less precise, still working. |
explain and read => question: | A cloud account. These synthesise with a language model and are the only capabilities that do not run without one. |
Every way in
The same index behind each of them.
| Way in | Who uses it |
|---|---|
| MCP | Claude Code, Codex, Cursor, and anything else that speaks the protocol. |
| CLI | rql query, read, explore, explain, import, watch — the whole surface, scriptable. |
| gRPC | Your own tools, against the same host. |
| SQL | The DuckDB surface directly, for anything the tools do not already shape. |
This page names what exists. The depth behind every name — the bounds, the failure modes, how they compose — ships inside the binary at help:///, and answers to explore and read exactly like your code does. Install it, and your agent has the manual.