jdx/mise
开发工具用一个 mise.toml 统一管理项目开发工具版本、环境变量和任务,适合多语言多项目的开发者。
项目介绍
mise(读作 "meez")把开发者通常分散管理的三件事收进一个 mise.toml:项目级开发工具版本、环境变量和任务。它可以从 1,000+ 工具的注册表或 GitHub releases、Aqua、Cargo、npm、PyPI 等后端安装 Node.js、Python、Go、Rust、Terraform 等工具;进入目录时自动加载声明的环境变量、.env 文件、PATH 条目和 virtualenv;任务在已配置好工具和环境的前提下运行,支持依赖、并行执行和文件监听。mise bootstrap 把同样的思路扩展到整机初始化。
它适合同时维护多种语言和多个项目的开发者,也支持渐进采用:现有 .tool-versions 可以保留,启用后 mise 还会读取 .nvmrc、.python-version 等惯用版本文件。mise lock 会把精确版本和校验和写入 lockfile,便于复现安装。
快速使用
在 macOS 或 Linux 上,用官方脚本安装并检查版本:
curl -fsSL https://mise.run | sh
~/.local/bin/mise --version
Windows 使用 winget install jdx.mise;Homebrew、apt、dnf 和 Scoop 见安装文档。安装器把二进制放在 ~/.local/bin/mise,该目录不在 PATH 时先用完整路径调用。
先不改动 shell,直接运行一个工具:
mise exec node@24 -- node --version
# v24.x.x
再创建一个记录工具、环境变量和任务的项目:
mkdir my-project && cd my-project
mise use node@24
mise set NODE_ENV=development
mise tasks add hello -- node -e "console.log(process.version, process.env.NODE_ENV)"
mise run hello
这会生成 mise.toml、安装 Node.js 24,并输出 Node 版本和 development。把该文件提交后,队友和 CI 执行 mise install 或 mise run 即可得到相同配置。需要切换目录后直接使用 node 时,可启用 shell 激活;bash、zsh、fish、PowerShell、Nushell 以及 IDE/CI shim 的配置见 shell 设置。
使用约束
CLI 面向 macOS、Linux 和 Windows,安装器和 shell 激活命令因平台而异。部分行为取决于安装方式:使用 mise.run 安装时,激活命令要引用 ~/.local/bin/mise,除非该目录已在 PATH 中。shell 集成是可选的,但若不想每次都用 mise exec,就需要它来实现按目录自动切换。"24" 这类版本串表示该系列的最新版本,需要精确版本和校验和时使用 mise lock。项目采用 MIT 许可证。
HotRepo 点评
项目在 Hacker News 上有明确讨论记录:2024 年 12 月的「Mise: Dev tools, env vars, task runner」获得 468 分和 189 条评论,2025 年 10 月的「Mise: Monorepo Tasks」获得 379 分和 94 条评论。评论者提到用一套工具替换 nvm、pyenv、RVM、SDKMan,并把 shell 启动变快归功于 mise(ban seljaj、tecoholic、aaronbrethorst)。2025 年 10 月围绕配套密钥管理器的讨论中也有人指出文档缺口(63stack),说明围绕 mise 的生态仍在演进。GitHub 数据方面,2026-11-05 的 Rust 语言日榜记录到第 9 名、当日新增 51 Star,2026-08-07 和 2026-08-08 的全部语言日榜分别显示新增 130 和 135 Star;这些单日数字只说明项目仍在被持续关注,不足以判断长期趋势。
本文由 AI 根据项目 README 生成,更新于 ,以项目官方文档为准。