Pixel vs grep

The line search every agent already knows, and the one it reaches for first: grep, ripgrep, the agent's own search tool.

Updated

Short answer

Grep finds the line; the cost is what comes next, when 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.

Side by side

Measured from the baseline. Grep is where the measurement starts: the match, then the file read it leads to, against Pixel's answer.

MeasurePixelgrep
Finds the matching lineYes, regex syntax keptYes
What the agent reads to know what trainer.py contains1,649 tok57,058 tok, the whole file
Less read across 8 well-known files79.7 to 97.2%The baseline
Callers, blast radius, Git historyYesNo
Index to build firstYes, in .pixel/None

Every figure above is on the benchmarks page, with its sample size, its method and the cases where Pixel loses.

Where grep wins

Nothing to install and no index to build: it runs on any file, anywhere, the moment it exists.

How they differ

Grep, ripgrep and an agent’s built-in search return matching lines, and the agent then opens the file around the match to understand it. That read is what costs tokens. pixel search-content takes the same regular expressions and returns the matches from the index; pixel list-signatures gives what the file contains without reading it whole, and pixel who-calls answers the next question without a second search.

Choosing

Keep grep for a quick look in a directory Pixel has not indexed, or at a file that did not exist a second ago. Use Pixel when the agent would otherwise open whole files to understand what it found.