Local by default
Your corpus stays on your machine as Markdown and one SQLite file. Search works offline, and the data shape stays portable.
01
No daemon required
02
No hosted index
03
No data lock-in
Real engine · public sample
Mirror documentation to Markdown. Index it with SQLite FTS5. Give people and agents precise, cited answers without a hosted search dependency.
$docs-puller search
"fts5 external content tables" --json
{
"mode": "fts5",
"elapsed_ms": 1,
"results": [
"title": "SQLite FTS5 Extension",
"source": "sqlite",
"path": "fts5.md"
]
}
One complete path
The engine owns the full retrieval loop, so its quality can be tested instead of assumed.
Mirror public documentation with stable URLs and manifests.
Turn provider pages into clean Markdown for humans and agents.
Build a portable SQLite FTS5 index with no external service.
Return cited snippets through the CLI, local API, or editor.
Measure Hit@k, MRR, latency, drift, and regressions.
Built for the real work
Your corpus stays on your machine as Markdown and one SQLite file. Search works offline, and the data shape stays portable.
01
No daemon required
02
No hosted index
03
No data lock-in
Frozen fixtures turn retrieval changes into visible Hit@k, MRR, latency, and drift decisions.
Read the methodStable JSON, cited snippets, source filters, and bounded results keep prompts compact and useful.
It uses 24 reviewed public pages. It sends no cookie, account, browser token, or local path. Aggregate runtime counts never contain your raw query.
No install needed
Search SQLite, Go, and PostgreSQL docs in the browser. Then reproduce the same query with the open CLI.