LEANN aims to be a personal knowledge layer — not just a storage-efficient vector database, but a unified, always-up-to-date knowledge base that runs entirely on your own machine. It connects your code, images, and personal data (documents, emails, browser history, chats) into a single multimodal search interface.
Contributions and feedback are welcome. Join our Slack to discuss.
- HNSW backend integration
- DiskANN backend with MIPS/L2/Cosine support
- Real-time embedding pipeline
- Memory-efficient graph pruning
- IVF backend with incremental add/remove (#231, #89, #141)
- Merkle tree file-change detection —
leann watch(#41)
The primary near-term goal: make LEANN the go-to MCP server for code-aware AI assistants. This means dynamic updates (your index stays current as you edit code), rich code context (AST-aware chunking that understands functions, classes, and modules — not just raw text), and a dead-simple interface (one command to build, automatic incremental updates, zero configuration for common setups).
- IVF backend — incremental add/remove without full rebuild (#231, #89, #141)
- Merkle tree file-change detection —
leann watchfor automatic re-indexing on file changes (#41) - Cold start optimization — faster first-build experience for new users (#166, #177)
- Live index updates — push index changes as files are saved, not just on rebuild
- Smarter code context — cross-file symbol resolution, call graph awareness, import tracking
- Hybrid search — combine dense vector retrieval with sparse keyword matching (BM25) for better recall on exact identifiers and variable names (#233, #90)
- ReadTheDocs — hosted documentation site (#234)
- Benchmarks — recall@k, latency, and storage comparisons across backends
- Video retrieval (#160)
- CLIP support — image-text cross-modal search (#94)
- OCR — extract text from images/scanned documents (#158)
- Windows support (#14)
- Web UI (#229)
- Agent + Deep research (#104)
- Local Cursor — local model + local retrieval for code assistance (#47)
- LlamaIndex integration (#217)
- Obsidian support (#96)
If you're interested in working on any of the items above, please reach out to @yichuan-w or @andylizf. See CONTRIBUTING.md for the full contributor workflow.