npx claudepluginhub thebushidocollective/han --plugin miseThis skill is limited to using the following tools:
Managing development tool versions across projects with Mise as a unified version manager.
Guides using mise to manage tool versions (Node.js, Python, Ruby, Go), environment variables, and project tasks for reproducible dev environments.
Generates production-ready mise.toml configurations for local dev, CI/CD pipelines, and toolchain standardization across Node.js, Python, Go, Rust, Java, Bun, Terraform stacks. Replaces asdf, nvm, pyenv.
Share bugs, ideas, or general feedback.
Managing development tool versions across projects with Mise as a unified version manager.
# Install specific version
mise install node@20.10.0
mise install python@3.12.0
mise install rust@1.75.0
# Install latest version
mise install node@latest
mise install python@latest
# Install from .tool-versions or mise.toml
mise install
# Set global version
mise use --global node@20
# Set project version
mise use node@20.10.0
mise use python@3.12 rust@1.75
# Use latest
mise use node@latest
# mise.toml
[tools]
node = "20.10.0"
python = "3.12.0"
rust = "1.75.0"
terraform = "1.6.0"
[tools]
# Latest patch version
node = "20.10"
# Latest minor version
node = "20"
# Latest version
node = "latest"
# Prefix notation
terraform = "1.6" # Latest 1.6.x
[tools]
# Use multiple versions
node = ["20.10.0", "18.19.0"]
python = ["3.12", "3.11", "3.10"]
# Switch between versions
mise shell node@18.19.0
[tools]
node = { version = "20.10.0", postinstall = "corepack enable" }
[tools]
python = "3.12"
[env]
_.python.venv = { path = ".venv", create = true }
[tools]
# From specific registry
"cargo:eza" = "latest"
"npm:typescript" = "5.3"
# From git repository
my-tool = "git:https://github.com/org/tool.git"
[tools]
# Languages
bun = "1.0"
deno = "1.38"
elixir = "1.15"
erlang = "26.1"
go = "1.21"
java = "21"
node = "20.10"
python = "3.12"
ruby = "3.3"
rust = "1.75"
zig = "0.11"
# Infrastructure
terraform = "1.6"
kubectl = "1.28"
awscli = "2.13"
[tools]
"npm:pnpm" = "8.10"
"npm:yarn" = "4.0"
"cargo:cargo-binstall" = "latest"
"go:github.com/golangci/golangci-lint/cmd/golangci-lint" = "latest"
# Production: Pin exact versions
[tools]
node = "20.10.0"
terraform = "1.6.4"
# Development: Use minor version ranges
[tools]
node = "20" # Any 20.x
python = "3.12" # Any 3.12.x
# Experimental projects
[tools]
rust = "latest"
bun = "latest"
# Set alias for current directory
mise alias set node lts 20.10.0
# Set global alias
mise alias set --global python3 python@3.12
[tools]
node = "lts"
python = "3.12"
# List installed tools
mise list
# Check current versions
mise current
# Verify tool installation
mise doctor
# Show tool details
mise ls-remote node
# List available versions
mise ls-remote python
# Check latest version
mise latest node
# Mise reads .tool-versions files
cat .tool-versions
# nodejs 20.10.0
# python 3.12.0
# Migrate to mise.toml
mise use node@20.10.0 python@3.12.0
# Read from .nvmrc
cat .nvmrc
# 20.10.0
mise use node@$(cat .nvmrc)
# Read from .python-version
mise use python@$(cat .python-version)
# Good: Explicit production versions
[tools]
node = "20.10.0"
terraform = "1.6.4"
postgres = "16.1"
# mise.toml - All project dependencies in one place
[tools]
node = "20.10.0"
python = "3.12.0"
terraform = "1.6.4"
kubectl = "1.28.0"
[env]
PROJECT_NAME = "my-app"
[tools]
# Enable corepack for package managers
node = { version = "20.10.0", postinstall = "corepack enable" }
# Create Python virtual environment
python = { version = "3.12", venv = ".venv" }
# In CI/CD pipelines
mise install --check
mise doctor
# Verify specific tools
mise current node
mise current python
# Root mise.toml - shared tools
[tools]
node = "20.10.0"
terraform = "1.6.4"
# packages/api/mise.toml - additional tools
[tools]
"npm:typescript" = "5.3"
"npm:prisma" = "5.7"
# packages/web/mise.toml
[tools]
"npm:next" = "14.0"
# mise.toml - production tools
[tools]
node = "20.10.0"
postgres = "16.1"
# mise.local.toml - development tools (gitignored)
[tools]
"npm:nodemon" = "latest"
"cargo:cargo-watch" = "latest"
# Check for updates
mise outdated
# Update to latest patch version
mise upgrade node
# Update all tools
mise upgrade
# Update with constraints
mise use node@20 # Updates to latest 20.x
# Bad: Using multiple version managers
nvm use 20
mise use node@20 # Conflicts
# Good: Use only Mise
mise use node@20
# Bad: Hardcoded paths
/Users/me/.local/share/mise/installs/node/20.10.0/bin/node
# Good: Use mise shims or mise exec
mise exec -- node
mise x -- node
# Bad: No version specified
[tools]
node = "latest" # Can break on updates
# Good: Specify constraints
[tools]
node = "20.10.0" # Explicit
# OR
node = "20" # Controlled range
# Bad: Missing required tools
[tools]
terraform = "1.6"
# Missing: kubectl, helm for deployment
# Good: Include all dependencies
[tools]
terraform = "1.6.4"
kubectl = "1.28.0"
helm = "3.13.0"
[tools]
# Install based on platform
node = "20.10.0"
python = "3.12"
# Platform-specific tools
[tools."cargo:watchexec-cli"]
platforms = ["linux", "darwin"]
version = "latest"
[tools]
node = {
version = "20.10.0",
postinstall = '''
corepack enable
npm install -g npm@latest
'''
}
# Use specific backend for tools
[tools]
# Use core backend (faster)
node = "core:20.10.0"
# Use asdf plugin
ruby = "asdf:3.3.0"