mise
mise(発音は “meez”、正式には mise-en-place)は Jeff Dickey による多言語開発環境 CLI です。リポジトリに置いた 1 つの mise.toml でランタイムとツールを入れ、プロジェクトの環境変数を読み、共有タスクを実行します。名前は、料理を始める前に食材と道具を所定の位置へ置くフランス語の “mise en place” から来ています。GitHub リポジトリは MIT ライセンスの Rust プロジェクトで、2023 年 1 月 9 日に作成され、現在約 3.25 万スターです。今回確認した最新の公式リリースは v2026.8.6 です。
主な機能
- 1つの設定で開発ツールを管理:
mise.tomlに Node、Python、Ruby、Go、Java、Rust、Terraform、kubectl、その他 1000 以上のツールを固定できます。mise use node@26ならプラグイン、ランタイム、バージョン指定を一度に済ませます。 - PATH だけではない環境管理:ディレクトリに入ると
.env、プロジェクト環境変数、Python virtualenv を読み込みます。秘密情報は平文ではなく sops や age を通せます。 - タスクランナー:
test、lint、build、デプロイコマンドを、必要なツールの隣に書いてmise runで実行します。 - asdf 互換だが asdf そのものではない:
.tool-versionsを読め、asdf プラグインも使えます。ただし Cosign、SLSA、Minisign、GitHub attestation を備えた aqua や GitHub などのバックエンドを優先します。 - activate か exec か:対話シェルでは
mise activateが PATH を更新します。CI やスクリプトではアクティベート不要のmise exec/mise runの方が安全です。 - Windows 対応:asdf 以外のバックエンドならベンダー提供の Windows バイナリを入れられます。asdf 自体は今も Windows で動きません。
使用シナリオ
- 多言語リポジトリ:1 ファイルで nvm、pyenv、rbenv などの言語別バージョンマネージャを置き換えます。
- チームの初期セットアップ:クローンして
mise installすれば、ローカルの Node / Python / CLI バージョンが CI と揃います。 - コーディングエージェント:Claude Code、Codex CLI、Cursor に、ホスト運任せではない確定的なツールチェーンを渡せます。
- Linux ワークステーション:Omarchy や Arch / macOS マシンと組み合わせ、AI CLI とランタイムを同期できます。
料金プラン
mise は MIT ライセンスの無料オープンソースです。ホスト型プランはありません。支払うのは、導入したツール、クラウド API、パッケージレジストリだけです。
はじめに
- Linux / macOS なら
curl https://mise.run | sh。Homebrew、apt、dnf、scoop、winget、chocolatey でも入れられます。 - シェルを有効化します。例:
echo 'eval "$(~/.local/bin/mise activate zsh)"' >> ~/.zshrc。 - ツールを固定:
mise use --global node@26、またはプロジェクトのmise.tomlに書きます。 mise installで設定どおりのツールを入れます。- アクティベートなしで一度だけ実行:
mise exec python@3 -- python。
公式の導入手順は Getting Started です。
よくある質問
ただ速い asdf ですか?
バージョン管理としては asdf の代わりになりますし、多くの asdf ユーザーもそう使います。より大きな違いは、環境変数とタスクが同じファイルに入ることです。性能は今も mise 側が有利ですが、公式ドキュメントは古い shim 税の議論より、UX とサプライチェーン検証を重視しています。
シェルで必ず activate する必要がありますか?
いいえ。アクティベートは任意です。mise exec と mise run はツールと環境を読み込みます。IDE や CI 向けの shim もありますが、activate の全機能は使えません。
主なリスクは何ですか?
一部ツールは今も asdf 風プラグイン経由で、第三者のシェルを実行します。aqua や GitHub バックエンドがあるならそちらを優先し、レジストリの新しいプラグインを無条件に信じないでください。
asdf や rtx からの移行は?
mise は .tool-versions を理解します。rtx は旧名で、既存設定は mise に対応します。~/.asdf を直接指すのではなく、ツールディレクトリを再インストールまたは移動してください。
代替案
- asdf:元祖のマルチランタイムマネージャ。プラグインの歴史は長い一方、DX は遅く、環境とタスクは一等機能ではありません。
- devbox / Nix:すでに Nix を使っているなら再現性はより強いです。多くのアプリチームには
mise.toml1 枚より重いです。 - nvm / pyenv / fnm:1 言語なら十分です。Node と Python と Terraform が同時に必要になると苦しくなります。
ヒントとベストプラクティス
- 口伝ではなく
mise.tomlをコミットする:新しいマシンやエージェントは git からバージョンを取るべきです。 mise use tool@versionを使う:node@20のようなファジー指定がコマンドでも設定でも使えます。asdf のようにlatest:20を分ける必要はありません。- CI でアクティベートに頼らない:
mise execかmise runを呼べば、開発者のシェル hook に依存しません。
まとめ
mise は現代のリポジトリ向け仕込み台です。ツール、環境、タスクを 1 ファイルにまとめ、気にならない速さで動きます。まだ nvm と pyenv と Makefile を並行運用しているなら、mise.jdx.dev でまず 1 つのランタイムを固定してください。
コメント
まだコメントがありません。最初のコメントを投稿してください!
関連ツール
ccusage
github.com/ccusage/ccusage
Claude Code、Codex、OpenCode などのローカルコーディングエージェントログからトークン使用量とコストを分析するオープンソース CLI。
CLI-Anything
clianything.cc
HKUDSのオープンソース登録簿。GUIアプリ、API、SaaSをエージェント向けCLIに変換し、OpenClaw、Claude Code、Codex、Cursorから利用できる。
T3 Code
t3.codes
Claude Code、Codex、Cursor、Grok Build、OpenCode をデスクトップ・Web・モバイルから統合操作できるオープンソースのエージェントハーネス。
関連インサイト
ローコードプラットフォームの黄昏:なぜClaude Agent SDKがDifyを歴史にするのか
大規模言語モデルの第一原理から、なぜClaude Agent SDKがDifyを置き換えるのかを深く分析。自然言語でプロセスを記述することが人間の原始的な行動パターンにより合致している理由、そしてなぜこれがAI時代の必然的な選択なのかを探る。
Skills + Hooks + Plugins:AnthropicによるAIコーディングツールの拡張性の再定義
Claude CodeのSkills、Hooks、Pluginsという三位一体アーキテクチャを深く分析し、なぜこの設計がGitHub CopilotやCursorよりも先進的なのか、そしてオープンスタンダードを通じてAIコーディングツールの拡張性をどのように再定義しているかを探ります。
Codex を閉じ込めているのはモデルではなく、ピッカーだ
OpenCode Go、Grok、Z.ai にはすでに課金しているのに、Codex のピッカーはほぼ GPT しか出さない。コミュニティ製の codex-router が教えるのは手順ではない。すでに買ったモデル能力をセレクタに戻すこと。鍵はマシンから出ず、ネイティブ GPT もそのまま残る。