Will my agent actually use it?
Not every time. Agents are trained on grep and fall back to it. Pixel does not wait for the agent to discover a tool: pixel install puts its protocol into every session, and pixel install --repo adds a guard that flags untargeted reads of large files. The guard advises and never blocks.
With Pixel 0.5.0 it did: in each of the 11 recorded runs behind the demo, the agent called Pixel 6 to 17 times. An earlier release fared worse: given its protocol alone, the agent barely ran a Pixel command, yet still scoped tasks 29% faster, so part of the gain is the protocol's guidance itself. The runs
Why not just grep?
Grep finds the line. The cost is what comes next: the agent opens the whole file to understand the match. On Hugging Face's 4,639-line trainer.py that read costs 57,058 tokens, and Pixel's answer to the same question 1,649. pixel search-content keeps grep's regex syntax, so the agent changes nothing but the bill.
Why not a language server?
A language server resolves types, so its "who calls this" is more exact than a syntax graph's. It also needs one running server per language and answers one cursor position at a time. Pixel is one binary, covers 13 languages and your Git history, and says when an answer may be incomplete: static analysis never sees every dynamic call, and every graph answer carries that warning.
Why not my editor's index?
It lives inside that editor. Pixel runs from the shell, so every agent on this page gets the same index, and it stays in .pixel/ at your repository root.
Pixel or semble?
Both, if you search in plain English a lot. semble puts the right file in its top 10 for 100% of 45 natural-language queries, Pixel for 69%. Pixel adds the call graph, blast radius, Git history and guarded Git writes. Together they cost about 5,100 tokens of context per turn. Where a specialist wins
Does anything leave my machine?
Nothing you did not ask for. The index lives in .pixel/ and there is no telemetry. Pixel touches the network for four things only: the embedding model it downloads from Hugging Face on first use, the Git remote operations you run (pixel fetch, pixel push), pixel classify, which sends its question to the model you configure, and pixel web-search, which sends its query to the SearXNG endpoint you configure and nowhere else, or, without one, to DuckDuckGo and then Wikipedia. Security model
Which languages?
Text search covers every file Git does not ignore, up to 4 MiB. The code graph covers TypeScript, JavaScript, Rust, Go, Java, Python, C#, Ruby, PHP, C, Swift, Elixir, and Lua. The last five go through a generic extractor rather than a dedicated one.