# mise v2026.9.0 — v2026.9.0: Lazy Tool Shims - Product: mise (https://whatsnew.fyi/product/mise) - Vendor: mise - Date: 2026-09-01 - Version: v2026.9.0 - Original notes: https://github.com/jdx/mise/releases/tag/v2026.9.0 - Permalink: https://whatsnew.fyi/product/mise/releases/v2026.9.0 What's New is an index, not a publisher: every entry below links to the vendor's own release notes, which are the authoritative source. Entries are labelled where they are hand-curated sample data, pre-releases, or drawn from a secondary source such as a developer blog. Reuse: the summaries, labels and curation here are © What's New. Quote freely with attribution and a link back; wholesale republication of the corpus is not permitted — terms: https://whatsnew.fyi/terms. The vendors' own release notes remain their publishers'. --- - **added** — Declare a tool as lazy in [tools] with lazy = true and mise generates bootstrap shims into its normal user/system shim farms, installing the provider only when one of its commands is first called - **added** — Registry tools derive their command names from registry bins, while explicit or non-registry backends declare them with lazy_bins - **added** — Add mise install --include-lazy to provision all lazy declarations - **added** — Add new global path settings shims_dir/MISE_SHIMS_DIR, system_installs_dir/MISE_SYSTEM_INSTALLS_DIR, and system_shims_dir/MISE_SYSTEM_SHIMS_DIR for system-scoped and collocated layouts - **added** — Add mise reshim --system to support system-scoped installations - **added** — Add erlang.precompiled_os setting and MISE_ERLANG_PRECOMPILED_OS environment variable to opt into a specific Bob Ubuntu build target including Ubuntu 26.04 on compatible glibc distributions - **added** — Preserve selected Erlang OS in lockfiles for reproducible builds - **fixed** — Postinstall hooks now activate the exact tool version being installed so nested mise invocations resolve that version instead of an older discoverable one - **added** — Add engram to registry - **added** — Add gentle-ai to registry This release introduces lazy tool shims, which install a tool automatically the first time one of its commands is invoked, plus an opt-in Erlang precompiled OS override and a fix for nested `mise` calls during postinstall hooks. ##### Added - **tools:** Declare a tool as lazy in `[tools]` with `lazy = true` and mise generates bootstrap shims into its normal user/system shim farms. The provider is installed only when one of its commands is first called, then executes immediately; subsequent calls run the real binary without another mise dispatch. Registry tools derive their command names from registry `bins`, while explicit or non-registry backends declare them with `lazy_bins`. A bare `mise install` skips lazy declarations; use `mise install --include-lazy` to provision them all. New global path settings (`shims_dir`/`MISE_SHIMS_DIR`, `system_installs_dir`/`MISE_SYSTEM_INSTALLS_DIR`, `system_shims_dir`/`MISE_SYSTEM_SHIMS_DIR`) and `mise reshim --system` support system-scoped and collocated layouts. ([#12594](https://github.com/jdx/mise/pull/12594) by @jdx) ```toml [tools] node = { version = "24", lazy = true } "github:example/acme" = { version = "1.2.3", lazy = true, lazy_bins = ["acme", "acmectl"] } ``` - **erlang:** New `erlang.precompiled_os` setting (and `MISE_ERLANG_PRECOMPILED_OS`) opts into a specific Bob Ubuntu build target—including Ubuntu 26.04—on compatible glibc distributions. Automatic target detection is unchanged, and lockfiles now preserve the selected OS for reproducible builds. Note the portability constraints around shared-library SONAMEs documented with the setting. ([#12637](https://github.com/jdx/mise/pull/12637) by @jdx) ##### Fixed - **install:** Postinstall hooks now activate the exact tool version being installed, so nested `mise` invocations (such as `mise which` or `mise ls`) resolve that version instead of an older discoverable one—or losing the tool entirely when it was declared through a custom config path with `mise use --path`. ([#12635](https://github.com/jdx/mise/pull/12635) by @jdx) ##### Registry - Added `engram` ([#12480](https://github.com/jdx/mise/pull/12480) by @AndryOre) - Added `gentle-ai` ([aqua:Gentleman-Programming/gentle-ai](https://github.com/Gentleman-Programming/gentle-ai)) ([#12444](https://github.com/jdx/mise/pull/12444) by @AndryOre) ##### New Contributors * @AndryOre made their first contribution in [#12444](https://github.com/jdx/mise/pull/12444) **Full Changelog**: https://github.com/jdx/mise/compare/v2026.8.16...v2026.9.0 ##### 💚 Sponsor mise mise is maintained by [@jdx](https://github.com/jdx), an open source developer for [**entire.io**](https://entire.io), the title sponsor of the [jdx.dev](https://jdx.dev) open source tools. Development is funded by sponsors. If mise saves you or your team time, please consider sponsoring at [jdx.dev](https://jdx.dev/sponsors.html). Individual and company sponsorships keep mise fast, free, and independent.