indexio Code Search
A code search engine for AI coding agents. One Rust binary indexes every repository in your organization and answers in milliseconds — no database, no external service.
Your Codebase, Queryable
Lexical, semantic, and structural questions — answered from one local index
Millisecond Answers
A trigram index with regex and exact-identifier search answers a query the moment it is asked. The index is a set of files in one directory — copy it to another machine and it just works.
Three Query Modes
Lexical, semantic, or hybrid — lexical, BM25, and vector results fused by Reciprocal Rank Fusion. The built-in Random Indexing model learns your organization's vocabulary on CPU.
Symbols & Call Graph
indexio knows where every function, struct, class, and trait is defined, who calls it, and what breaks if you change it — across every repository in the index.
Measured, Not Marketing
Same tasks, same repositories, counted with tiktoken — the built-in tools of a coding agent against indexio
−97%
Tokens Across All Tasks
1,579,270 tokens of built-in tool output vs 50,212 through indexio, on identical agent tasks.
−90%
Reading One Function
Outline plus the exact span, instead of the whole file — 41,612 tokens instead of 419,380.
−99.8%
Answering a Question
1,883 tokens of fused, ranked hits instead of 1,144,842 tokens of raw grep and read output.
54%
Fewer Tokens Than JSON
Dense plain-text rows — grouped repo:path and line: snippet — beat compact JSON for the same hits.
Benchmarks from the repository's bench suite — 44 repositories, 10 symbols and 3 file types per repository, questions written by a model.
One Binary, Every Surface
No service to run, no database to manage, no model download. The index is files in a directory.
Command Line
A single binary via curl, npm, pip, or cargo. Index a folder of repositories and search it in three commands.
Features
curl -fsSL .../install.sh | shMCP Server
Thirteen tools over stdio — search, symbols, call graph, impact analysis, and recall across past sessions.
Features
indexio mcpHTTP API
indexio serve on http://127.0.0.1:7717. Bearer-token or per-repository ACL auth; loopback is the default.
Features
indexio serve --auth-token $(openssl rand -hex 32)Native Claude Code Integration
Register the server, install the hooks, and every read and grep of an indexed file routes through the index — automatically
Setup Instructions
Install the binary — curl, npm, pip, or cargo
Run indexio add ~/code to index your repositories
Run indexio setup claude, then indexio hook install
Restart the agent session and verify with indexio search
What The Hooks Do
{
"mcpServers": {
"indexio": {
"command": "indexio",
"args": ["mcp"]
}
}
}Hook Installation Note
Scripts and builds still run as typed — the hooks only redirect file reads and searches of indexed files. Add # raw to run a refused command as typed.
Private by Design
Nothing is uploaded anywhere. The index lives in one local directory, and sensitive content never enters it.
Credentials Never Indexed
.env files, private keys, certificates, netrc, npmrc, and Terraform state are skipped — and a credential file indexed by an earlier version is removed by the next sync.
Redacted Recall
Session transcripts and run logs are redacted before storage: secret-looking settings, passwords in URLs, API keys, bearer tokens, and JWTs become <redacted>.
Loopback by Default
serve binds to 127.0.0.1 and refuses an open bind without a bearer token or ACL file. Per-token repository scoping keeps hits inside allowed patterns.
Get indexio
Open source under Apache-2.0. One binary, one command, and your organization's code is queryable in milliseconds.