A code search agent for Claude Code, Codex and Cursor
Code Oracle answers one question about where code is, what calls it, how it flows or where to change it, from the workspace's code index. It is free: a run costs no credits.
Or use it on slipstream.contextstream.io, signed in with your ContextStream account. Version 0.2.0 · Updated
What does Code Oracle do?
Answers where-is, what-calls, how-does-it-flow and where-to-change questions about indexed code: a cited answer of at most 600 tokens and a read list.
What it declines
A task like one of these is declined with a reason, and a declined run is free:
Changing code, writing patches or tests, or opening pull requests.
Reviewing a diff or a pull request (PR Reviewer does that).
Writing an onboarding guide to a whole repository (Repo Guide does that).
Plan and task status: what is next, what is blocked, who is on what (Plans & Tasks Keeper does that).
Returning file contents beyond short quotes; it returns a read list instead.
Questions that are not about the indexed code.
How well does Code Oracle work?
Measured on with version 0.2.0:
right file in the top 3
92%
118 of the 128 locate questions; the right file first for 80%
callers questions exact
75/75
every call site, from exact search of the index
p95 answer time
7.3 s
p50 3.7 s
fewer tokens for the calling agent
74%
668K to 173K on the mined questions; 68% if each miss pays for its own search again
Method. All 203 gold questions run live against ContextStream's code index: 128 locate questions mined from real Claude Code sessions and 75 callers questions generated from the code. The eval suite records each live run and replays it, so its gate reproduces these numbers. Source: Slipstream's Code Oracle eval suite (evals/oracle), live run 3, recorded with Code Oracle 0.2.0.
What does a real run of Code Oracle look like?
The input, the result (shortened where it is long), how long it took, what it cost and where it ran. Live runs used public or demo material only; a run marked as from the eval suite is not a live run.
Live run on ContextStream
What calls `index_status_from_data`?
Version
0.2.0
Outcome
succeeded
Ran
2026-10-27 17:18 UTC
Took
3.9 s
Cost
Free
ContextStream's Demos workspace (demo material only), in a project that indexes the public repository github.com/contextstream/mcp-server at v1.0.34.
`index_status_from_data` (defined at crates/mcp-server/src/hook_handlers/pre_tool_use.rs:416) has one production caller: `get_index_status` at crates/mcp-server/src/hook_handlers/pre_tool_use.rs:477, which loads index data and falls back to a not-indexed `IndexStatus` when none exists (crates/mcp-server/src/hook_handlers/pre_tool_use.rs:469). The other two call sites are tests, both passing the fixture path `[path]/projects/example-app/src`: crates/mcp-server/src/hook_handlers/pre_tool_use.rs:4119 and crates/mcp-server/src/hook_handlers/pre_tool_use.rs:4138.
{
"project_id": "6aad1065-8086-4114-931e-1b16c1d9b234",
"question": "Where does the MCP server work out which files are exact-search only, and where does index_status show it?"
}
Result
Answer
The MCP server reads index_status in crates/mcp-server/src/hook_handlers/pre_tool_use.rs: `index_status_from_data` (crates/mcp-server/src/hook_handlers/pre_tool_use.rs:416) parses the status payload and `get_index_status` (crates/mcp-server/src/hook_handlers/pre_tool_use.rs:469) fetches it. The exact-search-only breakdown is rendered by `format_exact_search_only` in the mcp-tools project domain (context:251b0446-efae-45f8-860d-b31c61a3d34a), which reads the `exact_search_only` summary's `files` and `by_reason` counts; a test pins that shape (context:4e878000-feda-4f88-9b6e-4a8b4ad3d510). The hits do not show the code that classifies individual files as exact-search-only — that computation is absent from the candidates; crates/mcp-tools/src/domains/search.rs only covers exact-search budget/failure handling (crates/mcp-tools/src/domains/search.rs:2807).
Read next
crates/mcp-server/src/hook_handlers/pre_tool_use.rs:379-409: Parses index_status payload; get_index_status fetches it nearby
crates/mcp-tools/src/domains/search.rs:7307-7337: Exact-search failure/budget handling, not file classification
crates/mcp-server/src/hook_handlers/git_post_checkout.rs:1-26: Ranked 2 by the index search.
Checks: 4 of 4 passed
index_read: 7 of 7 searches answered; 265 hits in 91 files.
citations: Every citation is to an item found in the index or the workspace.
answer_size: About 216 tokens; the limit is 600.
workspace_context: 5 context items from ContextStream for this job, about 234 tokens.
A harder question: the answer says plainly which part it could not find (confidence 0.45).
Task
549b4aa8-274d-4b36-a388-318768d04e03
What does Code Oracle cost?
Code Oracle is free: a run costs no credits. You need a ContextStream account; Starter is free.
Which tools does Code Oracle work with?
Claude Code, Codex, Cursor and other MCP clients: ContextStream's MCP gives them a slipstream tool that finds, runs and follows Code Oracle. It also runs from a terminal or an agent's shell with ss run oracle, and from the ContextStream web app.
Claude Code, Codex, Cursor and other MCP clients: connect ContextStream's MCP once (setup for each editor), then ask your agent to hand the job to Code Oracle.
A terminal or an agent's shell:ss run oracle, installed with ContextStream's command line.
The web app: the workspace's specialist library, where each run shows its price before it starts.
What access does Code Oracle need?
Code Oracle gets a short-lived token for one workspace, limited to 4 scopes: Searches code, Reads memory, Reads context and Models via ContextStream. It works in one project, and only for that run.
Model agent. A program on ContextStream's model proxy, with a short-lived token that acts for you in one workspace. It is stopped after 1 min.
Scope
What it lets a run do
search.read
Search the workspace’s code, by keyword and by meaning.
memory.read
Search memory, and read decisions and lessons.
context.read
Read the run’s context pack from the workspace.
model.invoke
Call models through ContextStream’s model proxy, under the run’s credit cap.
How do I turn Code Oracle on?
An owner or admin of your ContextStream workspace turns Code Oracle on in the specialist library of the web app. Specialist agents are opening workspace by workspace; if yours is not open yet, the library says so.
Sign in to ContextStream: the button below opens the specialist library on Code Oracle.
An owner or admin switches Code Oracle on for the workspace.
Pick the project it works in, and run it from the library, from your coding agent or with ss run.
How do I call Code Oracle from Claude Code or Codex?
Ask your coding agent to hand the job to Code Oracle, or call it yourself: ss run oracle in a terminal, or slipstream(action="run", agent="oracle", input={...}) over MCP.
Connect ContextStream's MCP (it also writes each editor's connection):
The file and lines that define it, and what to read next. Over MCP:
slipstream(action="run", agent="oracle", input={"question":"Where is the task route allow list defined?","project_id":"00000000-0000-4000-8000-0000000000a1"})
In a terminal (curl -fsSL https://contextstream.io/cs/install.sh | sh installs ss):
ss run oracle question='Where is the task route allow list defined?' project_id=00000000-0000-4000-8000-0000000000a1
Input
Field
Type
What it is
question
string, required
One question about the code: where something is, what calls something, how something flows, or where to make a change.
project_id
string, required
The indexed project (repository) to answer from.
paths
string[]
Path prefixes to prefer, for example ["crates/api/src"].
PR Reviewer reviews one pull request's diff for bugs and for breaches of the workspace's decisions, lessons and preferences, citing the line and the constraint for each finding.