| name | mise-tool-management |
| description | This skill should be used when the user asks to "add a tool to mise", "install a new CLI tool", "choose a mise backend", "search the mise registry", "detect tool drift", or mentions mise tool installation, backend selection, GIT_TERMINAL_PROMPT enforcement, or adding new dependencies to mise config.
|
Mise Tool Management
Backend Selection Decision Tree
When adding a new tool, choose the backend in this priority order:
- Registry shortname —
mise registry | grep <tool>. If found, use it.
- aqua: — Pre-built binaries with SLSA/cosign verification. Preferred for CLIs.
- github: — GitHub Releases (replaces deprecated
ubi:).
- pipx: — Python CLI tools from PyPI or git. Supports
extras.
- npm: — Node.js CLI tools. Uses bun via
npm.package_manager = "bun".
- cargo: — Rust crates.
- go: — Go tools. Requires Go runtime.
Deprecated (do NOT use)
ubi: — Use github: instead.
How to Add a New Tool
- Check registry:
mise registry | grep <tool>
- Choose optimal backend (see above)
- Add to
home/dot_config/mise/config.toml.tmpl under [tools]
- Run
chezmoi apply to deploy config
- Run
mise install --yes && mise lock && mise reshim
Aqua Backend Discovery
For tools not in the mise registry, check aqua:
mise ls-remote "aqua:<org>/<repo>"
GitHub Backend Discovery
For tools distributed via GitHub Releases:
mise ls-remote "github:<org>/<repo>"
Bun/uv Global Cleanup
When migrating globals to mise:
ls ~/.bun/install/global/node_modules/
bun remove -g <package>
uv tool list
uv tool uninstall <package>
Drift Detection
mise outdated — check version drift
mise doctor — health checks
- No
~/package.json (breaks bun hoisting)
- All config tools installed:
mise install --yes
Rules
GIT_TERMINAL_PROMPT=0 in all scripts with git operations
- Tools go in mise config, NOT in install scripts
mise lock after any config change