Local metasearch for humans and agents. One binary, one shared TTL cache.
cauce.fyi — the public instance · docs at docs.cauce.fyi
mise use -g github:espetro/cauce
cauce serve # UI + API + MCP on http://127.0.0.1:4479Or grab a release binary / build from source: docs/install.md
- One web UI, one HTTP API, one MCP server — all reading the same TTL cache.
- Tail-tolerant fan-out over pluggable engines (declarative YAML, exec, replay) with hedging and circuit breakers.
- Grounded AI answers at
POST /api/answer, with optional BYOK and a free daily-answer budget for public instances. - Local archive + search history in SQLite FTS5.
- Self-hosted and local-first: a single Rust binary, loopback by default; a public-instance mode exists for the edge.
| Path | What it owns |
|---|---|
crates/cauce-core |
Search pipeline, Store + Engine traits |
crates/cauce-server |
axum HTTP/SSE/MCP, embedded Svelte SPA at /app |
crates/cauce-engines |
Declarative / exec / replay engine runtimes |
crates/cauce-store-sqlite |
rusqlite Store implementation |
crates/cauce-agent |
Grounded-answer agent loop |
crates/cauce-cli |
cauce serve / search / engine / cache / record |
engines/ |
YAML engine specs + fixtures |
sdk/python |
exec-protocol SDK + ddgs reference engine |
End-user docs: docs.cauce.fyi · developer docs: .agents/docs/
Filing a bug? GET /api/report or cauce report produces a redacted JSON bundle to attach — see docs/reporting.md.
