v2026.8.16: Command wrappers and Windows shell fixes
- New [wrappers] config lets you intercept an ordinary command name with a different command, arguments, and environment
- acli, mimirtool, and specstory are no longer restricted to Linux and macOS and can now be installed and run on Windows
- llama.cpp resolution now includes prereleases since upstream began flagging its rolling bNNNN builds as GitHub prereleases
- mise env and mise activate --shims now emit valid Elvish quoting instead of bash's, fixing stray quotes, wrong PATH separator, apostrophes, exclamation marks with backslashes, and newline sequences in paths
- mise env -s fish now splits PATH on the host's separator and recognizes the Path spelling on Windows, so semicolon-separated Windows paths are no longer severed at each drive letter
- The "No URL for platform" error now lists every platform key a tool actually declares in mise.toml instead of falling back to a misleading "requires 'url' option" message
- When tools are current for their configured version ranges but newer releases exist beyond those ranges, mise upgrade now lists the affected tools with their current and available versions instead of printing "All tools are up to date"
- Double-dash task arguments are now preserved with double_dash="preserve" instead of being consumed by the outer CLI parser
- Embedded Aube npm installs are now isolated as a standalone one-package workspace so a pnpm-workspace.yaml above MISE_DATA_DIR can no longer redirect the install into the outer workspace
- Repository status checks now honor the global --jobs limit so mise bootstrap status, apply, and update run these read-only git checks with bounded concurrency
From mise
This release adds configurable command wrappers for intercepting ordinary commands, alongside a batch of shell and PATH fixes that make Windows activation more reliable and clearer upgrade and error messaging.
Added
-
shims: New
[wrappers]config lets you intercept an ordinary command name with a different command, arguments, and environment. Wrappers take precedence over mise-managed tools, and mise strips its dispatch directories before delegating so the underlying tool still resolves from mise or the system. Works with normal activation,activate --shims, andmise exec; managed wrapper shims are refreshed bymise reshim. (#12617 by @jdx)[tools] mr-boxington = "1.1.0" [wrappers.cargo] command = "mbx" env = { MBX_CARGO_SHIM_MODE = "1" }
Fixed
-
elvish:
mise envandmise activate --shimsnow emit valid Elvish quoting instead of bash's. This fixes several corruptions that mostly surfaced on Windows: stray quotes and the wrong PATH separator inactivate --shims, apostrophes and!arriving with backslashes, and\nsequences in paths likeC:\nodejsbeing turned into newlines. (#12584 by @JamBalaya56562) -
fish:
mise env -s fishnow splits PATH on the host's separator and recognizes thePathspelling on Windows, so semicolon-separated Windows paths are no longer severed at each drive letter. Empty PATH segments are dropped rather than adding the current directory. (#12582 by @JamBalaya56562) -
http: The "No URL for platform" error now lists every platform key a tool actually declares in
mise.toml, including typos and unrecognized names, instead of falling back to a misleading "requires 'url' option" message with an empty available list. (#12580 by @JamBalaya56562) -
upgrade: When tools are current for their configured version ranges but newer releases exist beyond those ranges,
mise upgradeno longer prints "All tools are up to date". It now lists the affected tools with their current and available versions plus the config source, and points tomise upgrade --bump. (#12613 by @jdx)Newer versions are available but do not match the configured version ranges: node 26.7.0 → 26.8.1 (~/.config/mise/config.toml) Run `mise upgrade --bump` to update the configuration and upgrade. -
task: Double-dash task arguments are now preserved with
double_dash="preserve". The first--separator was previously consumed by the outer CLI parser and lost before reaching the task. (#12628 by @jdx) -
npm: Embedded Aube npm installs are now isolated as a standalone one-package workspace, so a
pnpm-workspace.yamlaboveMISE_DATA_DIRcan no longer redirect the install into the outer workspace or mutate it. This mainly affects GitLab CI layouts where the data dir lives underCI_PROJECT_DIR. (#12630 by @jdx) -
bootstrap: Repository status checks now honor the global
--jobslimit, somise bootstrapstatus, apply, and update run these read-only git checks with bounded concurrency. (#12629 by @jdx)
Changed
- registry:
acli,mimirtool, andspecstoryare no longer restricted to Linux and macOS and can now be installed and run on Windows. (#12627 by @JamBalaya56562) - registry:
llama.cppresolution now includes prereleases, since upstream began flagging its rollingbNNNNbuilds as GitHub prereleases. The existing minimum-release-age andbversion prefix behavior is unchanged. (#12614 by @jdx)
Full Changelog: https://github.com/jdx/mise/compare/v2026.8.15...v2026.8.16
💚 Sponsor mise
mise is maintained by @jdx, an open source developer for entire.io, the title sponsor of the jdx.dev open source tools. Development is funded by sponsors.
If mise saves you or your team time, please consider sponsoring at jdx.dev. Individual and company sponsorships keep mise fast, free, and independent.