Veles – Hybrid (BM25 and semantic) local code search MCP, in Rust
Pure Rust CPU-only code search with persistent index beats transformer-heavy alternatives.
Reflex - The instant, code-aware local search engine.
MCP server gives Claude fast, token-efficient codebase knowledge without loading raw files.
Developers using AI coding assistants (Claude Code, Continue), teams managing large codebases, engineers frustrated with hosted code search tools.
Sourcegraph · Ripgrep · Tabnine (codebase-aware)
The MCP server is what I get the most value from. Claude Code and other AI coding assistants can search your codebase, find symbol definitions, trace dependencies, and navigate across branches without ever loading raw file contents into the context window. It gives the AI accurate knowledge of your codebase at a fraction of the token cost.
Switching branches is instant. Reflex reindexes only what changed, so you're never waiting for a full reindex when jumping between branches. You can index any branch in seconds on your laptop with no server, no configuration, and no cost.
Other things it does:
- Full-text search via trigram indexing (finds every occurrence, not just definitions) - Symbol-aware search with Tree-sitter (filter by function, class, struct, etc.) - Dependency analysis: what imports a file, what a file imports, circular deps, dead code - Incremental reindexing via blake3 hashing (only reindexes changed files) - Fully offline, all data stays on your machine
Install: npm install -g reflex-search or cargo install reflex-search
Happy to answer any questions about the implementation or use cases.
Pure Rust CPU-only code search with persistent index beats transformer-heavy alternatives.
Tree-sitter + FTS5 + MCP = tokens saved for AI agents to actually code, not search.
AST-aware codebase search and onboarding beats grep, ships as local MCP server.
Neatify exposes AST-level formatting as live Rhai scripts, so you write real code to shape output instead of tweaking a dozen JSON flags. The Tree-sitter backbone means any language with a grammar can be targeted, and the repo-first flavoring plus LLM-assisted script generation is a smart, practical twist. It's clearly early-stage (defaults modify files in-place and coverage is limited), but the architecture is an interesting alternative to opinionated, black-box formatters.
Tree-sitter + Rhai scripts replace opinionated formatters, but beta stability and language coverage remain questions.
Tree-sitter AST compression cuts LLM context tokens 50-70% while preserving API structure.