RAG
/rag is retrieval-augmented question answering built entirely out of ordinary
agents: no separate RAG service, no bespoke answer UI. Ask a question
and the agent files its answer as child bullets under the node you asked from, each claim
bold and backed by a [[source page]] link you can click straight to the evidence.
Three strategies, three agents
Section titled “Three strategies, three agents”Boot ensures three editable definition pages under agents/, each wrapping a different
retrieval strategy over the same knowledge base.
Pick whichever fits the question, or bind your own agent to one of these as a starting
point.
| Agent | Strategy | Underlying tool |
|---|---|---|
/rag |
Hybrid-RRF baseline: hybrid search results, then reads the top sources | kb.search |
/rag-pageindex |
Agentic directory expansion: walks the directory tree one level at a time, PageIndex-style, deciding where to descend | kb.expand |
/rag-direct |
Direct corpus integration: a bounded, title-ordered dump of the whole readable corpus, no ranking involved | kb.corpus |
/rag, hybrid-RRF baseline
Runs kb.search (the same reciprocal-rank-fused lexical-plus-vector search behind
⌘K), then reads the top-ranked source pages before drafting
an answer. This is the default choice for most questions: fast, cheap, and grounded in
whatever ranks highest.
/rag-pageindex, agentic directory expansion
Calls kb.expand {directory?} one level at a time, starting from the workspace root,
and decides where to descend based on what each level returns. Better than the
baseline when the answer depends on structure, “everything under research/”, rather
than on what a ranked search happens to surface.
/rag-direct, direct corpus integration
Calls kb.corpus {maxChars?}, a bounded, title-ordered concatenation of every readable
node grouped under [[source page]] headings. It bypasses embedding and rank
retrieval entirely, so it’s the right choice for small corpora or exhaustive questions
where you don’t trust a ranking to have surfaced everything relevant.
Asking a question
Section titled “Asking a question”Each /rag agent’s argsSchema accepts one required question argument, a full
natural-language question, not a keyword query. Invoke it like any slash
agent:
/rag what did we conclude about warm-start clustering in the segmentation project?The agent is prompted to produce one bold claim per output child bullet, each with a
[[source page]] link back to where that claim came from:
**Warm-start clustering cut convergence time by roughly 40% on the crisp-segmentation baseline.** [[research/crisp-segmentation-profile]]**The effect held only when the warm-start centroids came from the prior week's run.** [[research/warmup-hypothesis]]Answers file into the invoking page exactly like any other agent run: violet output bullets grow under the node you invoked from, and the run’s introspection chips let you inspect exactly what got retrieved.
Asking from the palette
Section titled “Asking from the palette”The ⌘K palette appends an “Ask /rag” row below the ordinary
hybrid search results. Pressing ⇧↵ on it files /rag <your query> on the page you have
open and starts the same child-node run there, so you never have to leave what you’re
reading to get a sourced answer.