Pular para o conteúdo

mise - Folha de Referência do Gerenciador de Ambiente de Desenvolvimento

mise - Folha de Referência do Gerenciador de Ambiente de Desenvolvimento

Seção intitulada “mise - Folha de Referência do Gerenciador de Ambiente de Desenvolvimento”

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.

PlataformaComando
macOS/Linux (Recomendado)curl https://mise.run | sh
macOS (Homebrew)brew install mise
Arch Linuxsudo pacman -S mise
Ubuntu/Debian (apt)sudo apt install mise
Fedora/RHELsudo dnf install mise
Windows (Scoop)scoop install mise
Cargo (Todas as plataformas)cargo install mise
Nixnix-env -iA nixpkgs.mise
Dockerdocker run jdx/mise
ShellArquivo de ConfiguraçãoComando para Adicionar
Bash~/.bashrceval "$(mise activate bash)"
Zsh~/.zshrceval "$(mise activate zsh)"
Fish~/.config/fish/config.fishmise activate fish | source
PowerShellProfilemise activate pwsh | Out-String | Invoke-Expression
ComandoDescrição
mise use node@22Instalar Node.js 22 e definir para o diretório atual
mise use python@3.12Instalar Python 3.12 para o diretório atual
mise use --global node@22Definir Node.js 22 como padrão global
mise use node@ltsUsar a versão LTS mais recente
mise use node@latestUsar a versão mais recente absoluta
mise installInstalar todas as ferramentas de mise.toml / .tool-versions
mise install nodeInstalar a versão configurada do Node.js
mise install node@20Instalar uma versão específica
mise uninstall node@18Remover uma versão específica
mise upgrade nodeAtualizar Node.js para a versão correspondente mais recente
mise upgradeAtualizar todas as ferramentas
mise lsListar todas as versões de ferramentas instaladas
mise ls nodeListar versões instaladas do Node.js
mise ls-remote nodeMostrar todas as versões disponíveis do Node.js
mise which nodeMostrar caminho para o binário node ativo
mise where node@22Mostrar diretório de instalação do Node.js 22
mise search pythonBuscar ferramentas disponíveis que correspondem a “python”
mise exec node@20 -- node -vExecutar 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.

ComandoDescrição
mise set MY_VAR=valueDefinir variável de ambiente para o diretório atual
mise set --global API_KEY=xyzDefinir variável de ambiente global
mise unset MY_VARRemover uma variável de ambiente
mise envMostrar todas as variáveis de ambiente ativas
mise env --jsonMostrar variáveis de ambiente como JSON
ComandoDescrição
mise run buildExecutar a tarefa “build”
mise run testExecutar a tarefa “test”
mise run lint -- --fixExecutar tarefa com argumentos extras
mise tasks lsListar todas as tarefas disponíveis
mise tasks info buildMostrar detalhes sobre a tarefa “build”
mise tasks add build "npm run build"Criar uma nova tarefa
mise tasks edit buildEditar uma tarefa em seu editor
mise tasks depsMostrar árvore de dependências de tarefas
mise tasks validateValidar 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

Hierarquia de Configuração (Mais específico vence)

Seção intitulada “Hierarquia de Configuração (Mais específico vence)”
  1. mise.toml no diretório atual
  2. mise.toml em diretórios pai (subindo)
  3. ~/.config/mise/config.toml (global)
ComandoDescrição
mise doctorDiagnosticar problemas de configuração
mise versionMostrar versão do mise
mise self-updateAtualizar o próprio mise
mise cache clearLimpar caches de download e build
mise reshimRegenerar arquivos shim
mise deactivateDesativar mise no shell atual
mise lockCriar um arquivo de bloqueio para instalações reproduzíveis
mise config lsListar todos os arquivos de configuração ativos
ComandoDescrição
mise plugins lsListar plugins instalados
mise plugins install terraformInstalar um plugin
mise plugins updateAtualizar todos os plugins
mise plugins update terraformAtualizar plugin específico
mise backends lsListar 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
Recursoasdfnvmdirenvmise
Multi-linguagemSimApenas NodeNãoSim
Variáveis de ambienteNãoNãoSimSim
Executor de tarefasNãoNãoNãoSim
Arquivo de configuração.tool-versions.nvmrc.envrcmise.toml + .tool-versions
VelocidadeLento (shell)ModeradaRápidaRápida (Rust)
ShimsSimSimNãoSim