mise
mise (pronounced "meez"), also called mise-en-place, is a polyglot development environment CLI by Jeff Dickey. It installs runtimes and tools, loads project env vars, and runs shared tasks from one mise.toml checked into the repo. The name comes from the French kitchen phrase for putting every ingredient in place before you cook. The GitHub repository is MIT-licensed Rust, created on January 9, 2023, and has about 32.5K stars. The latest first-party release as of this check is v2026.8.6.
Key Features
- Dev tools in one config: Pin Node, Python, Ruby, Go, Java, Rust, Terraform, kubectl, and 1000+ other tools in
mise.toml.mise use node@26installs the plugin, the runtime, and the version in one step. - Environments, not just PATH: Load
.envfiles, project env vars, and Python virtualenvs when you enter a directory. Secrets can go through sops or age instead of living in plaintext. - Task runner: Define
test,lint,build, and deploy commands next to the tools they need, then run them withmise run. - asdf-compatible, not asdf-shaped: Reads
.tool-versionsand can use asdf plugins, but prefers aqua, GitHub, and other backends with Cosign, SLSA, Minisign, or GitHub attestation checks. - Activate or exec:
mise activateupdates PATH in interactive shells.mise execandmise runwork without activation, which is the safer path for CI and scripts. - Windows included: Non-asdf backends can install vendor Windows binaries. asdf itself still does not run on Windows.
Use Cases
- Polyglot repos: One file replaces nvm, pyenv, rbenv, and a pile of language-specific version managers.
- Team onboarding: Clone the repo, run
mise install, and get the same Node, Python, and CLI versions as CI. - Coding agents: Give Claude Code, Codex CLI, or Cursor a deterministic toolchain instead of hoping the host already has the right Node.
- Linux workstations: Pair it with Omarchy or any Arch/macOS box so AI CLIs and language runtimes stay in lockstep.
Pricing
mise is free and open source under the MIT license. There is no hosted plan. You pay only for the tools, cloud APIs, or package registries those tools talk to.
Getting Started
- Install with
curl https://mise.run | shon Linux or macOS, or use Homebrew, apt, dnf, scoop, winget, or chocolatey. - Activate your shell, for example
echo 'eval "$(~/.local/bin/mise activate zsh)"' >> ~/.zshrc. - Pin tools:
mise use --global node@26or add them to a projectmise.toml. - Install everything the config asks for with
mise install. - Run a one-off binary without activation:
mise exec python@3 -- python.
Official first-party walkthrough: Getting Started.
Frequently Asked Questions
Is this just a faster asdf?
It can replace asdf for version management, and casual asdf users often treat it that way. The bigger difference is that env vars and tasks live in the same file. Performance still favors mise, but first-party docs now say UX and supply-chain checks matter more than the old shim-tax argument.
Do I have to activate it in my shell?
No. Activation is optional. mise exec and mise run already load tools and env. Shims exist for IDEs and CI, but they do not expose every activate feature.
What is the main risk?
Some tools still come through asdf-style plugins, which execute third-party shell. Prefer aqua or GitHub backends when they exist, and do not blindly trust every plugin in a new registry entry.
How do I migrate from asdf or rtx?
mise still understands .tool-versions. rtx was the previous name; existing rtx configs map onto mise. Reinstall or move tool directories rather than pointing at ~/.asdf.
Alternatives
- asdf: The original multi-runtime manager. Broader plugin history, slower DX, no first-class env or task runner.
- devbox / Nix: Stronger reproducibility if you already live in Nix. Heavier than a
mise.tomlfor most app teams. - nvm / pyenv / fnm: Fine for one language. Painful the moment a repo needs Node and Python and Terraform together.
Tips & Best Practices
- Commit
mise.toml, not tribal knowledge: New machines and agents should get versions from git. - Use
mise use tool@version: Fuzzy versions likenode@20work in commands and config, unlike asdf's splitlatest:20world. - Keep activation out of CI: Call
mise execormise runso scripts do not depend on a developer shell hook.
Conclusion
mise is the kitchen prep for a modern repo: tools, env, and tasks in one file, fast enough that you stop noticing it. If your team still juggles nvm plus pyenv plus a Makefile, start at mise.jdx.dev and pin one runtime today.
Comments
No comments yet. Be the first to comment!
Related Tools
ccusage
github.com/ccusage/ccusage
Open-source CLI that analyzes token usage and costs from local coding agent logs across Claude Code, Codex, OpenCode, and more.
CLI-Anything
clianything.cc
HKUDS open-source registry that turns GUI apps, APIs, and SaaS tools into agent-native CLIs for OpenClaw, Claude Code, Codex, and Cursor.
OpenSkills
github.com/openskills-ai/openskills
A universal skills loader that gives AI coding agents cross-platform skill sharing, installation, and usage, with installs from multiple sources.
Related Insights
Skills + Hooks + Plugins: How Anthropic Redefined AI Coding Tool Extensibility
An in-depth analysis of Claude Code's trinity architecture of Skills, Hooks, and Plugins. Explore why this design is more advanced than GitHub Copilot and Cursor, and how it redefines AI coding tool extensibility through open standards.
What Locks Codex Is the Picker, Not the Models
You already pay for OpenCode Go, Grok, and Z.ai, but the Codex picker still shows mostly GPT. The community project codex-router does not teach another install ritual. It puts subscriptions you already bought back into the selector, keeps keys on the machine, and leaves native GPT alone.
Seven AI Coding CLIs, Six Months: No Matter How Strong the Model, Work Needs Supervision
Claude Code, Codex, opencode, pi, omp and DeepSeek Harness all have personalities. After six months of deep use I run a division of labor: pi for the fastest cheapest reviews, omp for complex PRs, DeepSeek Harness on V4 Flash for high-frequency low-cost review, and Claude Code, Qoder and Cursor for writing. No matter how strong the model, work needs supervision — ideally from an independent third party.