Introducing Agentic Search for Code and Context
Today we're releasing Agentic Search: one API across every repo your agent can access, returning the code, the reasoning, and the session transcript behind a change. This gives agents a faster way to understand which pattern your team settled on and why a change landed, saving time and tokens.
We've observed strong results. In our benchmarks, across nine real engineering-history questions, run ten times each, an agent with access to the full Git history and the GitHub CLI answered 70 of 90 runs correctly. The same agent with search answered 81 of 90, while using less than half the tokens and half the steps.
Under the Hood
To minimize token usage and reduce time spent on loops, search gives agents a dual engine: 1) inferred meaning from the session transcripts and commits using semantic search, and 2) exact code snippets using code search.
Search fits directly into your workflow through the Entire CLI, which can be integrated with any major coding agent. When using search, your agent chooses the right engine per query and scopes the search to one repo or to all repos in your organization.
Semantic Search: The “Why” behind the Code
Semantic search answers what happened and why. If your agent searches for "rate limit retry logic," it will go through your session and commit history and find the conversation where the rate limit retry logic is defined. This gives the agent more context than a simple grep can.
When the work is done and a commit is pushed to Entire, our pipeline posts an event with the current and previous head commit into an event stream. Consumers pick up the event and diff the two commits to create chunks of the session log and commit messages. These chunks are then stored in turbopuffer.
We picked turbopuffer for two reasons. First, it gives us the flexibility to execute BM25 (exact word) and Approximate Nearest Neighbor (semantic) search in the same query. This means we can return exact matches and semantic matches in one API call and layer on our own ranking.
Second, turbopuffer is globally distributed and has active deployments everywhere Entire is deployed, enabling developers in the US, EU, India, and Australia to have their data indexed and stored in-region. Not only does that reduce latency, but it also complies with local data residency requirements.
Code Search: Exact by Design
Code search finds an exact line of code in one or multiple repos. It's a literal, symbol-aware search with definitions and references, and provides agents with the file reference where a commit was made.
When a developer pushes to main, an event again hits our event stream, and our indexing pipeline fetches a shallow version of the repository. Where we can, we update the code index incrementally rather than rebuilding it from scratch. Once we've built the index, we store it in S3 for persistence while keeping a local version in cache for fast reads.
Median query latency is around 100 milliseconds across thousands of indexed repos.
Benchmark: “Why Is Our Code like This?”
The hardest questions for agents and humans to understand about a codebase are often "Why is the code like this?", "What information was available when this was written?", or similar historical context. To put search to the test, we pulled nine real engineering-history questions asked inside our own organization, such as "Why does the rate limiter count inputs instead of requests?" and ran each one ten times through two headless Claude agents. Both agents used full-history clones of every relevant repo, git log, git log -S, git show, and the GitHub CLI for PRs and issues. One also used search, resulting in lower token consumption and less time spent searching.
| Scenario | No search | Search |
|---|---|---|
| Across all 90 runs | ||
| Correct answershigher is better | 70/90 | 81/90 |
| Tokens per questionmean · lower is better | 547K | 262K |
| Cost per questionmean · lower is better | $0.38 | $0.23 |
| Agent stepsmean · lower is better | 14 | 7 |
| Deepest-history question | ||
| Correct answershigher is better | 0/10 | 10/10 |
| Time to answermedian · lower is better | 407s | 35s |
| Unprompted tool use | ||
| Reached for search on its ownof 90 runs | — | 90/90 |
| Search as the very first tool callof 90 runs | — | 66/90 |
One caveat is that these questions target our own organizational history, so task-selection bias applies. Our commit messages are detailed, mainly because they are written by agents, which strengthens the Git-history baseline.
We published the full harness, tasks, grading methodology, and raw per-run results at entireio/searchmark, and designed the harness so you can rerun it against your own org.
Try It
The fastest way to use agentic search is to install the Entire CLI and the search skill:
-
Just run in your repo. Your agent will then use our agentic search as part of the reasoning process.
-
On the command line, provides semantic search across your sessions, commits, checkpoints, and transcripts. Add
--codeto include code matches. Use interactive mode for a tabbed view, or--jsonfor structured output agents can read. Scope any search to one repo, several repos, or everything you have access to. -
You can also access search in the browser at entire.io, by clicking Search in the left-hand menu. Code search includes definitions and references, both within a file and across the repo.
We are building Entire to be the system of record for agentic coding. In the coming weeks, we'll keep shipping tools that let agents query code, sessions, and commits together, making Entire one API for your code and the reasoning that produced it.
