Waarom grep je agent-stack kan redden: PwC's empirische antwoord op de retrieval-strategie-oorlog
AI & ArchitectuurDe vraag die elke RAG-architect zou moeten stellen
De default in enterprise retrieval is vector search. Pinecone, Weaviate, Qdrant, kies je embedding model, bouw je index, en je bent klaar. Maar wat als grep, ja, letterlijk Unix grep, beter presteert?
Een team van PwC US heeft die vraag systematisch getest. Hun paper Is Grep All You Need? How Agent Harnesses Reshape Agentic Search is geen theoretische verhandeling. Het is een 2×4×2 factorieel experiment op 116 LongMemEval-vragen dat een ongemakkelijke waarheid blootlegt: grep wint, maar niet omdat grep universeel superieur is. Het wint omdat de retrieval-strategie nooit los staat van de harness die hem uitvoert.
Drie dimensies, één systeem
De paper test drie ontwerpdimensies die in de praktijk zelden samen worden geëvalueerd:
| Dimensie | Wat werd vergeleken |
|---|---|
| Retrieval-strategie | grep-only vs. vector-only |
| Agent-harness | Chronos (custom, LangChain) vs. Claude Code vs. Codex CLI vs. Gemini CLI |
| Tool-calling architectuur | inline (resultaten in context window) vs. programmatic (resultaten naar bestand → agent moet lezen) |
Die derde dimensie is de verrassing. Inline delivery is simpel: zoekresultaten verschijnen direct in de context. File-based delivery schrijft resultaten naar disk; de agent moet expliciet besluiten wat te openen, te lezen, of verder te doorzoeken. Minder tokenbelasting, maar een extra redeneerstap die kan falen.
De modellen: Claude Opus 4.6, Claude Haiku 4.5, GPT-5.4, Gemini 3.1 Pro, Gemini 3.1 Flash-Lite. Vijf backbones, vier harnesses, twee delivery paths, twee retrievers.
De resultaten die ertoe doen
1. Inline grep > inline vector. Altijd. Over alle 10 harness-model paren wint grep bij inline delivery. De marges zijn niet subtiel:
| Harness + Model | Inline grep | Inline vector | Delta |
|---|---|---|---|
| Chronos + Gemini Flash-Lite | 86,2% | 62,9% | +23,3 |
| Chronos + Claude Opus 4.6 | 93,1% | 83,6% | +9,5 |
| Claude Code + Haiku 4.5 | 55,2% | 44,0% | +11,2 |
2. De harness is minstens zo belangrijk als de retriever. Dezelfde Claude Opus 4.6 backbone, dezelfde data, dezelfde vragen:
- Chronos (custom): 93,1%
- Claude Code (provider CLI): 76,7%
Een verschil van 16,4 procentpunten, puur door de harness. Dit is de belangrijkste methodologische implicatie: retrieval benchmarks die alleen BM25 vs. ANN meten in een statische pipeline onderschatten de variantie die agent scaffolding introduceert radicaal.
3. File-based delivery kan je stack breken. Codex + GPT-5.4 crasht van 93,1% (inline grep) naar 55,2% (programmatic grep). Dezelfde retriever, dezelfde data, hetzelfde model, maar het "locate → open → integrate" patroon breekt de stack. Dit is geen retrieval-probleem; het is een tool-use stress test die de delivery path zelf wordt.
De auteurs formuleren het scherp: "programmatic routing trades context bandwidth for compositional tool competence; gains are realized only when the agent reliably closes the loop."
Waarom grep wint, en waarom dat niet het hele verhaal is
De paper is eerlijk over de beperking: LongMemEval-vragen draaien vaak om letterlijke spans, exacte datums, aantallen, voorkeuren, namen. Grep's precisie-bias matcht die taakverdeling perfect. De auteurs zeggen expliciet: "we claimen niet dat grep vector verslaat in het algemeen, alleen dat het kan winnen onder deze taakverdeling."
Maar hoeveel enterprise retrieval-taken lijken niet op LongMemEval? Tender-alerts zoeken naar exacte CPV-codes en aanbestedingsdrempels. Regulatory monitoring scant naar wetsartikelen en implementatiedata. Compliance checks zoeken naar letterlijke clausules. Incident response doorzoekt exacte error strings, commit hashes, en configuratiepaden. Dit is precies het soort retrieval waar grep excelleert.
De echte bijdrage: retrieval is een systeemattribuut
De strategische waarde van dit paper zit niet in "grep beats vector search." Die conclusie zou te simplistisch zijn. De echte bijdrage is dat retrievalkwaliteit een systeemattribuut is, geen componentattribuut.
Klassieke RAG-evaluaties beoordelen een retriever los: recall@k, MRR, nDCG, embeddingkwaliteit. Dit paper laat zien dat bij agentic search de performance ontstaat uit de combinatie van: retriever, querygeneratie door het model, tool-descripties, harness-prompting, stdout formatting, context-injectie, file-routing, stopcriteria, en herstelgedrag na slechte resultaten.
"Grep" in productie is zelden alleen grep, het is grep-plus-shell-plus-prompting.
Dit verklaart ook waarom vendor-CLI's niet retrieval-interchangeable zijn, zelfs niet met byte-identieke bestanden. Claude Code, Codex en Gemini CLI verschillen niet alleen in modelkwaliteit, maar in hoe zij command execution, context, transcript formatting en tool errors framen.
De vijflaagse retrieval-architectuur
Vanuit governance-perspectief vertaalt de paper zich naar een vijflaags hybride model:
Laag 1, Lexical-first. rg, grep, BM25, metadata filters. Exacte timestamps, padnamen, service IDs, commit hashes, policy tags. Dit is je control-plane search: feiten, status, bewijs, logs, exacte fouten, paden en governance gates.
Laag 2, Structured provenance. JSONL events, OpenSpec IDs, agent run IDs, tool-call IDs, source_map, confidence, freshness, approval gates. De gestructureerde laag die retrieval hits bindt aan herleidbare herkomst.
Laag 3, Vector/Qdrant. Semantische nabijheid, vergelijkbare incidenten, governance-thema's, architectuurpatronen, risk narratives. Dit is je sensemaking-plane search: patronen, overeenkomsten, incidentfamilies, strategische synthese.
Laag 4, Rerank en evidence binding. Combineer lexical hits en vector hits met Reciprocal Rank Fusion of een reranker, maar verplicht antwoordgeneratie op citeerbare evidence.
Laag 5, Harness observability. Log niet alleen "welke retriever won", maar ook welke harness, tool-presentatie, stdout chunking, file-read stappen, stopcriteria en failure recovery zijn gebruikt.
De fout die je moet vermijden is een "vector-only memory architecture." Die oogt modern, maar verliest vaak precisie op precies de signalen die in agent governance doorslaggevend zijn: exacte paden, labels, timestamps, command output, approval states en config drift.
Security en governance implicaties
De paper documenteert retrieval-architectuur, security is impliciet. Voor secure-by-design agentic systems voeg ik toe:
| Risico | Mitigatie |
|---|---|
| Hallucinated remediation door onjuiste retrieval | Evidence quorum: minimaal één lexical hit + één structured provenance hit vóór mutating actions |
| Agent leest verkeerde file in programmatic mode | Default-deny tool policy; shell tools alleen binnen expliciete evidence roots |
| CLI-gebaseerde grep geeft te veel vrijheid | Read-only mode voor discovery; command-injection mitigatie via sandboxing |
| Vector search haalt governance-verkeerde bronnen op | Koppel elke retrieval hit aan provenancevelden: source path, hash, timestamp, trust tier |
| Context rot door inline delivery | Dynamische truncatie op basis van relevance scores, niet alleen token count |
De paper geeft ook een genuanceerd signaal over de veiligheid van file-based delivery: het verlaagt contextdruk, maar introduceert een workflow-faalpunt. Als de agent niet consistent de read→integrate→retry loop kan sluiten, is file-based delivery gevaarlijker dan inline, niet vanwege data-exposure, maar vanwege systematisch incorrecte antwoorden die correct lijken.
Conclusie
Dit paper bevestigt een fundamenteel punt voor agentic AI engineering: de retrieval-laag is geen neutrale component, maar onderdeel van de agent-harness. Grep kan vector search verslaan bij long-memory QA omdat veel antwoorden letterlijk in de corpussporen staan. Maar de winst verdwijnt of keert om zodra tooloutput via files, shell-flows en provider-specifieke CLI-harnesses loopt.
Voor enterprise AI-architecten betekent dit: ontwerp geen "Qdrant versus grep" keuze. Ontwerp een hybride, provenance-first retrieval fabric waarin grep/ripgrep, metadata, structured traces en vector search elk een expliciete rol hebben, met observability op de volledige harness-loop.
Gebruik lexical retrieval als control-plane search, feiten, bewijs, exacte paden. Gebruik vector retrieval als sensemaking-plane search, patronen, overeenkomsten, synthese. En benchmark ze altijd samen met je harness, niet als losse componenten.
Gebaseerd op: Sen, S., Kasturi, A., Lumer, E., Gulati, A. & Subbiah, V. K. (2026). Is Grep All You Need? How Agent Harnesses Reshape Agentic Search. arXiv:2605.15184.
AI & Security Intelligence
Wekelijkse nieuwsbrief met AI updates, security alerts en compliance inzichten, direct in uw inbox.
Security & AI Operating Model
Advisory met executiekracht
Van BIO2 en NIS2 tot EU AI Act, embedded in uw operating model, niet als extern project. Maandelijks opzegbaar, met assessments als bewijsvoering.