unch
A local-first command-line tool for semantic code search that indexes functions, methods, types and their attached documentation with Tree-sitter, then finds them by meaning rather than exact name, using local GGUF embeddings by default and sqlite-vec for storage.
unch parses source files with Tree-sitter to index top-level symbols - functions, methods, types, classes, interfaces - and their attached documentation across Go, Rust, TypeScript, JavaScript and Python, then lets a developer search that index from the terminal by describing what code does rather than knowing its exact name or file path. Embeddings are computed locally with llama.cpp by default, with everything staying on the machine unless the developer opts into OpenRouter-hosted embeddings or publishes a remote index; a shared index can optionally be published through GitHub Actions for teams that want one, without requiring it for normal local use.
It installs an npm package that downloads a matching native release binary for the platform, or can be installed through Homebrew, a shell or PowerShell installer script, or built from source with Go, and integrates with Codex by registering itself as an MCP tool and installing a skill file.
Indexes are built once and searched repeatedly from the CLI without a running server process.