From 0790b2b6d044673bf55ff3dcb7132b5f27f1efa0 Mon Sep 17 00:00:00 2001 From: Austin Schaefer Date: Wed, 19 Aug 2026 17:48:32 +0200 Subject: [PATCH] docs: add retriever to the architecture diagram The diagram still showed the original four-agent pipeline (researcher/reviewer/writer/summarizer) with no mention of the document embedding/retrieval step added in #10. Added a retriever box feeding excerpts into the researcher, plus a bullet describing it, matching the retrieval pipeline already documented in prose further down the README. --- README.md | 29 +++++++++++++++++------------ 1 file changed, 17 insertions(+), 12 deletions(-) diff --git a/README.md b/README.md index 814d92a..6d68fb3 100644 --- a/README.md +++ b/README.md @@ -27,22 +27,27 @@ failure was fixed, not just papered over. ## Architecture Four small agents, each with one job, coordinated by plain Rust control -flow — not a framework's agent graph, not an LLM deciding when to stop: +flow — not a framework's agent graph, not an LLM deciding when to stop — +plus an optional retrieval step when `--doc` documents are supplied: ``` -┌─────────────┐ approve/reject ┌──────────┐ -│ researcher │ ───────────────► │ reviewer │ -│ (tool-using)│ ◄─────────────── │ │ -└──────┬──────┘ gaps/feedback └────┬─────┘ - │ turn budget exhausted │ approved, - │ mid-investigation │ or out of rounds - ▼ ▼ -┌──────────────┐ ┌──────────────┐ -│ summarizer │──findings───►│ writer │──► report -│ (recovery) │ │ │ -└──────────────┘ └──────────────┘ +┌────────────┐ excerpts ┌─────────────┐ approve/reject ┌──────────┐ +│ retriever │ ───────────► │ researcher │ ───────────────► │ reviewer │ +│(--doc only)│ │ (tool-using)│ ◄─────────────── │ │ +└────────────┘ └──────┬──────┘ gaps/feedback └────┬─────┘ + │ turn budget exhausted │ approved, + │ mid-investigation │ or out of rounds + ▼ ▼ + ┌──────────────┐ ┌──────────────┐ + │ summarizer │──findings───►│ writer │──► report + │ (recovery) │ │ │ + └──────────────┘ └──────────────┘ ``` +- **retriever** (only when `--doc` paths are given) — chunks and embeds + user-supplied documents with a dedicated embedding model, then retrieves + the excerpts most relevant to the topic once up front and folds them into + the researcher's task, cited with the same footnote scheme as web sources. - **researcher** — a tool-calling agent (`search_web`, `fetch_page`) that gathers and cross-checks evidence, capped at a fixed model-call budget so a confused model can't loop forever.