Local metasearch for humans and agents. One binary, one shared TTL cache.
cauce.fyi is the public instance. Docs at docs.cauce.fyi
# install script (macOS and Linux)
curl -fsSL https://raw.githubusercontent.com/espetro/cauce/main/install.sh | sh
# or mise
mise use -g github:espetro/cauce
# or from source
cargo install --locked --git https://github.com/espetro/cauce cauce-cli
cauce serve # UI + API + MCP on http://127.0.0.1:4479More options (release tarballs, a checkout build): 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, or pluggable in-memory / edge storage (
MemoryStore). - Self-hosted, local-first, and edge-ready: a single Rust binary, loopback by default; compile or embed as WASM / Serverless (Cloudflare Workers, Spin, AWS Lambda) via pure
Storeandtower::Servicetraits.
| Path | What it owns |
|---|---|
crates/cauce-core |
Search pipeline, Store (MemoryStore) + Engine traits |
crates/cauce-server |
axum HTTP/SSE/MCP, embedded Svelte SPA at /app, WASM harness |
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.
