Releases: uchebnick/unch
unch v0.4.4
unch v0.4.4
v0.4.4 is a small MCP and Codex reliability release. It makes the Codex integration safer to use across real workspaces and refreshes the project documentation around the current setup flow.
Highlights
- MCP tools now accept an optional
directoryargument, soworkspace_status,search_code, andindex_repositorycan operate on the active repository instead of the directory where the MCP server process was launched - The MCP backend now routes tool calls to a repository-scoped backend and keeps
workspace_statuscheap: checking another workspace does not create.semsearch - The Codex MCP setup docs were simplified around the recommended flow: install the npm wrapper, run
unch codex install, then restart Codex - The npm package docs now point users at the same Codex setup flow as the main README and Mintlify docs
CONTRIBUTING.mdnow includes a fuller project overview, module map, and development workflow for contributors
Upgrade notes
- If you use Codex with the npm wrapper, update and re-run
unch codex install, then restart Codex - The MCP tool names are unchanged:
workspace_status,search_code, andindex_repository - Existing
.semsearchindexes remain compatible; this release changes MCP workspace routing, not the index format - Source installs can use
go install github.com/uchebnick/unch/cmd/unch@v0.4.4
unch v0.4.3
unch v0.4.3
v0.4.3 is a small Codex and npm polish release. It focuses on making the npm-installed workflow easier to turn into a working agent setup after installing @uchebnick/unch.
Highlights
- Added
unch codex installto the npm wrapper flow, so a user can install the package, register the MCP server, and install the localunchCodex skill with one explicit command - The Codex setup writes the skill to
~/.codex/skills/unch/SKILL.md, configures longer MCP startup/tool timeouts, and removes the old~/.codex/prompts/unch.mdprompt if it exists - Refreshed README, npm package docs, and Mintlify installation docs around npm as the recommended install path and Codex skill setup
- Aligned the npm MCP smoke test with the current tools-only MCP server by checking
tools/listandworkspace_statusinstead of the removed prompt API
Upgrade notes
- If you installed
@uchebnick/unchbefore this release and want Codex integration, rununch codex installonce and restart Codex - The MCP server still exposes the stable tools
workspace_status,search_code, andindex_repository - Source installs can use
go install github.com/uchebnick/unch/cmd/unch@v0.4.3
unch v0.4.2
v0.4.2
Release published automatically from tag v0.4.2.
unch v0.4.1
unch v0.4.1
v0.4.1 is the publishable v0.4 release. It includes the v0.4 workflow expansion changes and fixes the release-blocking llama.cpp runtime ABI mismatch that broke the v0.4.0 tag smoke test.
Highlights
- Added
--provider openrouterforindex,search, and MCP, withunch auth openrouter --token ...for storing API keys outside the project tree - Added Rust Tree-sitter indexing for functions, methods, structs, traits, impl blocks, enums, modules, and attached docs
- Upgraded the local index schema to isolate snapshots by provider, model, and embedding dimension, so local
llama.cppmodels and remote OpenRouter models can coexist in the same.semsearchstate - Added
unch start mcp, a stdio MCP server exposingworkspace_status,search_code, andindex_repository - Added MCP initialize instructions that tell agents to check workspace status first, search before broad file reads, and rebuild the index only when needed
- Added npm wrapper installation support for the CLI and MCP entrypoint
- Updated
github.com/hybridgroup/yzmatov1.13.0, fixing first-run local indexing with the current downloadedllama.cppruntime archives
Upgrade notes
- Local index storage moves to schema version 2. Existing v1 indexes are reset automatically, so run
unch index --root .once after upgrading - OpenRouter credentials can be saved globally in
~/.config/unch/tokens.json; useunch auth openrouter --local --token ...only when you intentionally want repository-local credentials in.semsearch/tokens.json - MCP uses stdio only in this release. Configure clients with command
unchand argumentsstart mcp, or rununch start mcpdirectly from the repository root - If you install from source, use
go install github.com/uchebnick/unch/cmd/unch@v0.4.1
unch v0.3.12
unch v0.3.12
v0.3.12 is the recommended stable release for the recent indexing hotfix line.
Highlights
- fixes a native embedding runtime crash that could abort
unch indexduring real-world indexing workloads - caps embedding input to the smallest runtime-reported bound across
NCtx,NBatch, andNUbatch - keeps the earlier embedding-state cleanup fix for
decode returned non-zero: 1 - adds a tagged-release smoke gate that runs a real
unch indexbefore publishing release assets - refreshes the Windows ARM MSYS2 keyring setup in CI to avoid transient package signature failures
Upgrade notes
- If you installed
v0.3.11, upgrade tov0.3.12. - No index rebuild should be required when upgrading from
v0.3.10orv0.3.11. - To install from source:
go install github.com/uchebnick/unch/cmd/unch@v0.3.12unch v0.3.11
unch v0.3.11
v0.3.11 is a hotfix release that addresses inference errors (decode returned non-zero: 1) preventing code indexing on wide-context repositories.
Highlights
- Fixed a
llama.cppcrash (KV cache overflow) by reliably clearing embedding evaluation state memory between files - Corrected invalid CGO runtime state that could leak while processing minified JavaScript files sequentially
Upgrade notes
- No index rebuild is required when upgrading from
v0.3.10 - If you install from source, use
go install github.com/uchebnick/unch/cmd/unch@v0.3.11
unch v0.3.10
unch v0.3.10
v0.3.10 is a small release that changes the project license to Apache 2.0 and fixes crashes during code indexing.
Highlights
- changed the project license to Apache 2.0
- restricted tokenization size to the configured
NCtxto avoid context overflow errors - added filtering for null bytes (
\x00) and invalid UTF-8 sequences before the CGO boundary to fixsignal arrived during cgo executioncrashes - bumped
golangci-lint-actionfrom 8 to 9 - updated the demo GIF in the documentation
Upgrade notes
- no index rebuild is required when upgrading from
v0.3.9 - if you install from source, use
go install github.com/uchebnick/unch/cmd/unch@v0.3.10
unch v0.3.9
unch v0.3.9
v0.3.9 is an install-reliability and CLI-polish release. It keeps the local-first indexing and search flow intact while making published installers safer, fixing the latest install path so it stays on release assets, adding a simple CLI version check, and simplifying the public embedding-model tuning surface.
Highlights
- shell and PowerShell installers now verify downloaded release assets against the published
checksums.txtfile before unpacking - unversioned installer paths now prefer GitHub
releases/latestassets instead of unexpectedly falling back togo install - install smoke coverage now exercises the installer flow on macOS, Windows, Ubuntu, Debian, Arch, and NixOS-like Linux environments
unch --version,unch -version, andunch versionnow report the CLI build version, and release binaries inject the release tag into that outputindexandsearchno longer expose a separate--batch-sizeknob;--ctx-sizeremains the public override for model context sizing- model install metadata now lives in a dedicated internal catalog, reducing duplication between runtime model profiles and install-time model resolution
- install docs now show the current macOS/Linux
sudo sh -s -- -b ...flow, the Windows PATH note, andunch --versionas a lightweight post-install verification step - benchmark docs and CI summary flow were tightened up so the checked-in suites are described as
unchregression tracking rather than cross-tool comparisons
Upgrade notes
- no index rebuild is required when upgrading from
v0.3.8 - no remote index workflow migration is required for repositories already using
unch-index.yml - if you automated
unch indexorunch searchwith--batch-size, drop that flag and keep--ctx-sizeonly when you need to override the model default - you can verify the installed CLI with
unch --versionandunch --help - if you install from source, use
go install github.com/uchebnick/unch/cmd/unch@v0.3.9
unch v0.3.8
unch v0.3.8
v0.3.8 is a release-confidence patch release. It keeps the v0.3.7 CLI, runtime, and indexing behavior intact while adding regression coverage around first-run downloads, managed yzma installs, and cached model repair flows, and it republishes the current install path under a fresh semver tag for Go module consumers.
Highlights
- adds direct runtime fetch coverage for the GitHub release lookup, temp-file downloader, tar/zip extraction paths, and the
yzmaarchive 404 fallback - covers automatic known-model downloads and cached GGUF repair flows in the model cache
- exercises managed
yzmainstall resolution and stdout download progress reporting through local test servers and archive fixtures - raises the portable-package CI coverage after the runtime downloader and archive hardening work that landed in
v0.3.7
Upgrade notes
- no index rebuild is required when upgrading from
v0.3.7 - if you install from source or use
go install, usegithub.com/uchebnick/unch/cmd/unch@v0.3.8 - if you previously tried the public Go module path at
v0.3.7, switch tov0.3.8
unch v0.3.6
unch v0.3.6
v0.3.6 is a benchmark reporting and release automation patch release. It keeps the v0.3.x search and indexing behavior intact while fixing Telegram delivery, tightening cross-platform benchmark comparisons, and polishing the project entry points.
Highlights
- fixes Telegram release notifications for the configured channel target and surfaces Telegram API errors directly in the release workflow
- aligns the release benchmark matrix across Linux, macOS, and Windows by adding macOS, using the same
cisuite on Windows, and collapsing per-platform benchmark details in the summary - reports Windows benchmark CPU info more accurately and adds Telegram News and Telegram Chat badges to the README header
Upgrade notes
- no index rebuild is required when upgrading from
v0.3.5 - existing installs can be upgraded through the normal installer path
- keep
TELEGRAM_CHAT_IDset to the full Telegram channel id if you use release notifications