know
A semantic search CLI for local files. Watch directories, chunk documents, and query your notes, docs, or code instantly from the terminal.
What is know?
know is a lightweight semantic search tool that indexes your local files using vector embeddings and ChromaDB. Search across markdown, code, PDFs, and 20+ file types with natural language queries — all processed locally without sending your data anywhere.
Key features
Local semantic search
Vector embeddings and ChromaDB for intelligent, context-aware search across all your local documents
Multiple search modes
Choose between dense vector search, BM25 lexical search, or hybrid fusion for optimal results
20+ file types
Index markdown, code files (Python, JS, Go, Rust), PDFs, Word docs, and more
Smart filtering
Filter by glob patterns, modification time, or file type to narrow your search scope
Incremental indexing
Fast updates with intelligent caching — only re-index files that have changed
Flexible output
Rich terminal UI, plain text, or JSON output for easy integration with other tools
Quick start
Get up and running with know in three simple steps
Install know
Install know using pipx for an isolated Python environment:Or use uv for local development:
Add directories to watch
Point know to the directories you want to search:Check your watched directories anytime:
Explore the documentation
Learn more about know’s commands and capabilities
Commands
Complete reference for all know commands and their options
Search modes
Learn about dense, BM25, and hybrid search strategies
Filtering
Master glob patterns and time-based filtering
Architecture
Understand how know indexes and retrieves your documents
Ready to search your files?
Install know and start searching your local documents with semantic search in minutes.
Get Started