Overview
The problem
Architecture
Vault manifests and project profiles
Local indexing
Shared service
Retrieval and source verification
- vault_profiles lists available retrieval scopes.
- vault_search returns matching excerpts, citations, and recommended reads.
- vault_read returns source text after checking the expected hash.
- vault_status reports readiness, active revisions, and degradation.
Key design decisions
Scope before ranking
Lexical search remains useful on its own
Source text travels with the shared index
Embedding policy belongs beside file selection
Tech stack
- Python 3.12+ for the CLI, indexing pipeline, workers, and API
- SQLite FTS5 for local lexical retrieval
- PostgreSQL and pgvector for shared source revisions and vector storage
- OpenAI-compatible embedding APIs for optional semantic search
- MCP over Streamable HTTP for agent discovery, search, and source reads
- Docker Compose and Helm for local service demos and Kubernetes deployment
- GitHub Actions and GHCR for validation and container publication