Um gerenciador de ambiente de desenvolvimento poliglota que substitui asdf, nvm, pyenv, direnv e make em uma única ferramenta. Gerencie versões de ferramentas, variáveis de ambiente e tarefas de projeto — tudo a partir de um arquivo de configuração.
| Plataforma | Comando |
|---|
| macOS/Linux (Recomendado) | curl https://mise.run | sh |
| macOS (Homebrew) | brew install mise |
| Arch Linux | sudo pacman -S mise |
| Ubuntu/Debian (apt) | sudo apt install mise |
| Fedora/RHEL | sudo dnf install mise |
| Windows (Scoop) | scoop install mise |
| Cargo (Todas as plataformas) | cargo install mise |
| Nix | nix-env -iA nixpkgs.mise |
| Docker | docker run jdx/mise |
| Shell | Arquivo de Configuração | Comando para Adicionar |
|---|
| Bash | ~/.bashrc | eval "$(mise activate bash)" |
| Zsh | ~/.zshrc | eval "$(mise activate zsh)" |
| Fish | ~/.config/fish/config.fish | mise activate fish | source |
| PowerShell | Profile | mise activate pwsh | Out-String | Invoke-Expression |
| Comando | Descrição |
|---|
mise use node@22 | Instalar Node.js 22 e definir para o diretório atual |
mise use python@3.12 | Instalar Python 3.12 para o diretório atual |
mise use --global node@22 | Definir Node.js 22 como padrão global |
mise use node@lts | Usar a versão LTS mais recente |
mise use node@latest | Usar a versão mais recente absoluta |
mise install | Instalar todas as ferramentas de mise.toml / .tool-versions |
mise install node | Instalar a versão configurada do Node.js |
mise install node@20 | Instalar uma versão específica |
mise uninstall node@18 | Remover uma versão específica |
mise upgrade node | Atualizar Node.js para a versão correspondente mais recente |
mise upgrade | Atualizar todas as ferramentas |
mise ls | Listar todas as versões de ferramentas instaladas |
mise ls node | Listar versões instaladas do Node.js |
mise ls-remote node | Mostrar todas as versões disponíveis do Node.js |
mise which node | Mostrar caminho para o binário node ativo |
mise where node@22 | Mostrar diretório de instalação do Node.js 22 |
mise search python | Buscar ferramentas disponíveis que correspondem a “python” |
mise exec node@20 -- node -v | Executar comando com uma versão de ferramenta específica |
Node.js, Python, Ruby, Go, Rust, Java, Erlang, Elixir, PHP, Terraform, kubectl, Helm, Deno, Bun, e centenas mais via plugins.
| Comando | Descrição |
|---|
mise set MY_VAR=value | Definir variável de ambiente para o diretório atual |
mise set --global API_KEY=xyz | Definir variável de ambiente global |
mise unset MY_VAR | Remover uma variável de ambiente |
mise env | Mostrar todas as variáveis de ambiente ativas |
mise env --json | Mostrar variáveis de ambiente como JSON |
| Comando | Descrição |
|---|
mise run build | Executar a tarefa “build” |
mise run test | Executar a tarefa “test” |
mise run lint -- --fix | Executar tarefa com argumentos extras |
mise tasks ls | Listar todas as tarefas disponíveis |
mise tasks info build | Mostrar detalhes sobre a tarefa “build” |
mise tasks add build "npm run build" | Criar uma nova tarefa |
mise tasks edit build | Editar uma tarefa em seu editor |
mise tasks deps | Mostrar árvore de dependências de tarefas |
mise tasks validate | Validar configuração de tarefas |
# .mise.toml ou mise.toml na raiz do projeto
[tools]
node = "22" # Versão major exata
python = "3.12" # Versão minor exata
terraform = "latest" # Sempre mais recente
ruby = "3.3.0" # Versão patch exata
go = "prefix:1.22" # Última 1.22.x
[env]
NODE_ENV = "development"
DATABASE_URL = "postgres://localhost/mydb"
# Carregar do arquivo .env
_.file = ".env"
[tasks.build]
description = "Build the project"
run = "npm run build"
depends = ["install"] # Executar 'install' primeiro
[tasks.install]
description = "Install dependencies"
run = "npm install"
[tasks.test]
description = "Run test suite"
run = "npm test"
depends = ["build"]
[tasks.dev]
description = "Start dev server"
run = "npm run dev"
# .tool-versions — compatível com asdf
node 22.0.0
python 3.12.1
ruby 3.3.0
mise.toml no diretório atual
mise.toml em diretórios pai (subindo)
~/.config/mise/config.toml (global)
| Comando | Descrição |
|---|
mise doctor | Diagnosticar problemas de configuração |
mise version | Mostrar versão do mise |
mise self-update | Atualizar o próprio mise |
mise cache clear | Limpar caches de download e build |
mise reshim | Regenerar arquivos shim |
mise deactivate | Desativar mise no shell atual |
mise lock | Criar um arquivo de bloqueio para instalações reproduzíveis |
mise config ls | Listar todos os arquivos de configuração ativos |
| Comando | Descrição |
|---|
mise plugins ls | Listar plugins instalados |
mise plugins install terraform | Instalar um plugin |
mise plugins update | Atualizar todos os plugins |
mise plugins update terraform | Atualizar plugin específico |
mise backends ls | Listar backends de ferramentas disponíveis |
# Remover nvm da configuração do shell, então:
mise use --global node@$(node -v | sed 's/v//')
# mise lê arquivos .tool-versions nativamente
# Apenas instale mise e ative-o — arquivos .tool-versions existentes funcionam
# Mover variáveis de ambiente para a seção [env] do mise.toml
# mise gerencia variáveis de ambiente com escopo de diretório nativamente
# Configurar um novo projeto
cd ~/projects/my-app
mise use node@22 python@3.12
mise set NODE_ENV=development
# Clonar e inicializar um projeto
git clone repo && cd repo
mise install # Instala todas as ferramentas do mise.toml
# Executar tarefas do projeto
mise run dev # Iniciar servidor de desenvolvimento
mise run test # Executar testes
mise run build # Build para produção
# Verificar versões de ferramentas em projetos
mise ls
# Manter ferramentas atualizadas
mise upgrade # Atualizar todas as ferramentas para a versão mais recente
| Recurso | asdf | nvm | direnv | mise |
|---|
| Multi-linguagem | Sim | Apenas Node | Não | Sim |
| Variáveis de ambiente | Não | Não | Sim | Sim |
| Executor de tarefas | Não | Não | Não | Sim |
| Arquivo de configuração | .tool-versions | .nvmrc | .envrc | mise.toml + .tool-versions |
| Velocidade | Lento (shell) | Moderada | Rápida | Rápida (Rust) |
| Shims | Sim | Sim | Não | Sim |