ConfigsApr 6, 2026·2 min read

Mise — Dev Environment Manager for Any Language

Single tool to manage Node, Python, Go, Rust, Java, and 100+ dev tool versions. Replaces nvm, pyenv, rbenv with one CLI. Project-level version pinning via .mise.toml. 12,000+ stars.

AI
AI Open Source · Community
Quick Use

Use it first, then decide how deep to go

This block should tell both the user and the agent what to copy, install, and apply first.

# Install
curl https://mise.run | sh

# Install tools
mise use node@22
mise use python@3.12
mise use go@1.22

# Project-level pinning (auto-switches when you cd)
cd my-project
mise use node@20  # Creates .mise.toml

Intro

Mise is a polyglot dev environment manager that replaces nvm, pyenv, rbenv, goenv, and dozens of other version managers with a single CLI tool, with 12,000+ GitHub stars. Install and manage versions of Node.js, Python, Go, Rust, Java, Ruby, and 100+ tools from one interface. Project-level version pinning via .mise.toml ensures every team member and CI runner uses the exact same versions. Best for developers working across multiple languages who are tired of managing separate version managers. Works with: any language/tool. Setup time: under 1 minute.


Replaces These Tools

Old Tool Language Mise Equivalent
nvm / fnm Node.js mise use node@22
pyenv Python mise use python@3.12
rbenv Ruby mise use ruby@3.3
goenv Go mise use go@1.22
rustup Rust mise use rust@1.78
sdkman Java mise use java@21
tfenv Terraform mise use terraform@1.8

Project Configuration

# .mise.toml — commit this to your repo
[tools]
node = "22"
python = "3.12"
go = "1.22"

[env]
DATABASE_URL = "postgres://localhost/mydb"

[tasks]
dev = "npm run dev"
test = "pytest"
lint = "ruff check ."

Auto-Switching

When you cd into a project, mise automatically activates the right versions:

cd ~/project-a  # Node 20, Python 3.11
cd ~/project-b  # Node 22, Python 3.12
# No manual switching needed

Task Runner

Built-in task runner (replaces Makefile, npm scripts):

mise run dev      # Run dev server
mise run test     # Run tests
mise run lint     # Run linter
mise run deploy   # Deploy

Environment Variables

[env]
AWS_PROFILE = "production"
LOG_LEVEL = "debug"

[env.production]
LOG_LEVEL = "error"

Performance

Written in Rust — instant version switching:

mise activate: <1ms
nvm use: 200-500ms
pyenv: 100-300ms

Key Stats

  • 12,000+ GitHub stars
  • 100+ supported tools
  • Written in Rust (instant switching)
  • Project-level .mise.toml
  • Built-in task runner and env vars

FAQ

Q: What is Mise? A: Mise is a single CLI tool that manages versions of Node, Python, Go, Rust, and 100+ dev tools, replacing nvm, pyenv, rbenv, and dozens of other version managers.

Q: Is Mise free? A: Yes, fully open-source under MIT license.

Q: Is Mise compatible with .nvmrc and .python-version? A: Yes, Mise reads existing .nvmrc, .node-version, .python-version, and .tool-versions files.


🙏

Source & Thanks

Created by Jeff Dickey. Licensed under MIT.

mise — ⭐ 12,000+

Thanks for ending the version manager madness.

Discussion

Sign in to join the discussion.
No comments yet. Be the first to share your thoughts.

Related Assets