Research your documents. Trust every answer.
A local-first desktop workspace for reading and questioning your own sources. Every answer carries the passage it came from, and retrieval runs on your machine — not in someone else's cloud.
Windows x64 · macOS Apple Silicon · unsigned, one prompt on first launch

Local-first
Your documents, notebooks and embeddings stay on your machine — the embedder runs inside the app, so retrieval works offline.
Traceable
Every answer keeps the source passage behind it, with its place in the document recorded.
Lightweight
Download, open, start reading. No Docker, no server, no account.
Answers that can be checked
A citation is only worth something if it lands somewhere. Point at the marker and the thread runs back to the passage behind the answer.
handbook.pdf p. 14
- 01Retrieval quality is a property of the whole pipeline, not of the
- 02vector store. A passage cut in the middle of a sentence retrieves
- 03badly and quotes worse, and no amount of tuning at the ranking step
- 04recovers the meaning the split destroyed. Keeping the boundaries the
- 05document already had costs almost nothing at import time.
Answer
Splitting is where retrieval quality is decided. A passage cut mid-sentence is poor to retrieve and worse to quote, so the fix belongs at import time.
The passage records where it began and ended in the extracted text, so the citation points at the passage, not the whole file.
Questions become knowledge
A notebook accumulates questions before it accumulates answers. Open one to see what the answer rests on, the passage behind it, and what you concluded.
Why does retrieval quality degrade?
Answer
Because the passage boundaries were decided before retrieval ran. A split that lands mid-sentence misleads both retrieval and every quotation taken from it.
Sources
- handbook.pdf
- survey-2024.pdf
- notes-week-3.docx
- draft-methods.pdf
Paragraph in the original
A passage cut in the middle of a sentence retrieves badly and quotes worse, and tuning the ranking step cannot recover the meaning the split destroyed.
Note
Boundaries are an import decision, not a ranking one.
Dense retrieval, or BM25?
Answer
Both sources favour dense retrieval on semantic queries, and BM25 wherever the query shares a rare term. The disagreement is mostly about the corpus.
Sources
- survey-2024.pdf
- benchmark-notes.pdf
- course-reader.pdf
- slides-w7.pptx
- blog-post.html
- draft-methods.pdf
Paragraph in the original
Hybrid scoring recovered most of the gap on the out-of-domain split, which suggests the dense component carried semantics and the sparse component carried rare terms.
Note
Compare the two on one corpus. Two corpora is not a comparison.
How does attention scale with sequence length?
Answer
Quadratically in the sequence dimension. Every source treats that as the constraint to design around, so the work is in what replaces the full matrix.
Sources
- attention-paper.pdf
- efficient-transformers.pdf
- course-reader.pdf
Paragraph in the original
The cost of attention grows with the square of the sequence length, so the practical ceiling is memory rather than compute.
Note
The ceiling is memory. That reframes the efficiency literature.
What evidence would change my mind?
Answer
A run on the same corpus where the sparse baseline matches the hybrid, or a hybrid result that holds without the rare-term queries. Neither is in this notebook.
Sources
- draft-methods.pdf
- survey-2024.pdf
- notes-week-3.docx
- benchmark-notes.pdf
- rebuttal.pdf
Paragraph in the original
Ablating the sparse component left the aggregate score within two points, but the per-query breakdown is not reported.
Note
Aggregate scores hide this. Ask for the per-query table.
Which methods do these papers share?
Answer
Three of the four share an early pooling step and differ only afterwards. The fourth is structurally different, so its numbers are not comparable.
Sources
- survey-2024.pdf
- attention-paper.pdf
- efficient-transformers.pdf
- benchmark-notes.pdf
Paragraph in the original
All three recover a fixed-width representation before any scoring, which makes their differences a matter of what happens next rather than how the input is read.
Note
The odd one out is the interesting one.
Illustrative, written for this page.
From documents to notes
- Drop in your sourcesEach format has its own parser, so page and slide structure survive.pdf · docx · pptx · http
- Ask questionsIn your own words. Retrieval is multilingual.your notebook only
- Verify the evidenceEvery answer points back at the passage behind it.citation → passage
- Build your notesWhat you concluded stays beside the sources.structured · local
Works with the models you choose
No bundled chat model and no account of ours. Add any OpenAI-, Anthropic- or Google-compatible endpoint, or a local server such as Ollama. The credential stays on disk; retrieval needs no model.
- OpenAIendpoint
- Geminiendpoint
- Claudeendpoint
- DeepSeekendpoint
- Ollamalocal server
- Any compatibleendpoint
- Built-in local embedderships with the app
- model
- multilingual-e5-small
- revision
- 761b726d
- dtype
- q8
- dims
- 384
Built in the open
The repository is the project. The numbers below were read from it.
- Stars
- 1,101
- Forks
- 147
- Open issues
- 25
- Licence
- GPL-3.0
Every issue, pull request and release is public. What is not shipped yet is on the download page.
Your sources. Your questions. Your knowledge.
One screen asks you for anything — a model connection. The embedder is already here.