This page compares workspace search workflows for coding agents. The estimates are practical planning numbers for agent interaction cost and prompt context.
Shell tools remain available everywhere. Scout answers the same questions from a resident, watcher-fresh index with ranked fuzzy search, exhaustive strict search, scoping, pagination, and results shaped for MCP clients.
| Workflow | LLM + grep/rg/find | Scout | Why it matters |
|---|---|---|---|
Find a file or identifier from a rough memory find | Calls: Several find/ls/grep attempts while guessing the exact spelling and location. Tokens: Medium: each failed guess adds output the model has to read and discard. Correctness / safety: Shell globs miss renames and partial recollections; the agent may conclude the code does not exist. | Calls: 1 fuzzy find call, for example { "query": "usrctrl" }. Tokens: Low: ranked top-N matches with previews, best candidates first. Correctness / safety: Frecency ranking surfaces the files the workspace actually uses; the route echo shows how the query was interpreted. | Exploration queries are the highest-frequency agent operation; each retry loop costs a full round trip. |
Exhaustive audit of a pattern find | Calls: 1-2 rg commands, plus flag tuning for case, word boundaries, or excludes. Tokens: Medium to high: raw line dumps, no pagination, easy to overflow context on common patterns. Correctness / safety: Completeness depends on getting ignore rules and flags right; output order varies across tools. | Calls: 1 strict find call with match: literal, regex, or word. Tokens: Low to medium: deterministic order, pagination with totals, trimmed previews. Correctness / safety: Strict modes are exhaustive with an explicit exhaustive flag, and a zero-hit result is an honest empty answer, never a silent fuzzy fallback. | Rename and deprecation audits are only useful when the agent can trust it saw every match. |
Search right after editing files find sync | Calls: Re-run the search and hope the filesystem state is what the shell sees. Tokens: Medium: repeated searches to confirm changes landed. Correctness / safety: Correct on disk, but nothing tells the agent whether it already searched stale results earlier. | Calls: 1 find call; every query self-flushes pending watcher changes before reading. Tokens: Low: one query reflects the edit that just happened. Correctness / safety: The freshness gate applies delivered changes before answering, and the index revision is reported. | Agents edit and immediately re-search; stale results send the whole session down the wrong path. |
Scoped search in a large monorepo find | Calls: Compose include/exclude globs and path arguments per shell tool dialect. Tokens: Medium to high: over-broad results from vendored or generated trees. Correctness / safety: Each shell tool has different glob semantics; excludes are easy to get subtly wrong. | Calls: 1 find call with scope: pathPrefix, globs with ! excludes, or language tokens. Tokens: Low: results restricted to the scope, with paging totals. Correctness / safety: One scope grammar, and language filters work without maintaining extension lists. | Monorepos punish unscoped search with noise that drowns out the real matches. |
Search in a language without a semantic server find server_status | Calls: Fall back to grep because no language server or compiler tool covers the files. Tokens: Medium: unranked raw text results. Correctness / safety: Works, but the agent has no signal about what better options exist. | Calls: 1 find call; Scout covers every language as the universal fallback. Tokens: Low to medium: same ranked and strict search everywhere. Correctness / safety: When Glider or TGlider is installed for the language, Scout says so in hints instead of competing with them. | Polyglot repositories need one dependable search surface, not a different answer per language. |