Codex nvmの切り替え方法|Windows・macOSの版確認と導入
Codex nvmを使うと、プロジェクトごとにNode.jsの版を切り替えながら、Codex CLIの導入状態をそろえられます。2026年8月29日にCodex CLI 0.151.0が公開され、古いNode.jsや別のcodexが呼ばれる問題を整理する好機です。nvmはNode.jsだけを管理するため、版番号と実行場所を一緒に確認します。WindowsとmacOS・Linuxに分けて解説します。
Codex nvmで最初に覚えることは、Node.jsの版とCodex CLIの版は別々に管理されるという点です。nvmでNode.jsを切り替えても、別の版でグローバルに入れたCLIがそのまま共有されるとは限りません。まずはOpenAIのCodex CLI公式ドキュメントで導入方法を確認し、`node --version` と `codex --version` を同じ端末で記録します。
Windowsではnvm-windows、macOSやLinuxではnvm-shを使うのが基本です。名前は似ていますが、シェルへの読み込み方や版の切り替え方が異なります。OSに合う版管理ツールを選ぶこと、プロジェクトが要求するNode.jsの版を先に決めること、切り替え後にCodex CLIの場所を調べることが、導入時の行き違いを減らします。
2026年8月29日公開のCodex CLI 0.151.0は、MCPや権限など周辺の改善を含む更新でした。更新を試すときは、Node.jsを変えたのか、Codex CLIを変えたのかを分けて考えます。版番号・実行ファイルの場所・プロジェクトの場所を残せば、動作が変わった理由を追いやすくなります。
目次 (30)
- Codex nvmを今確認する理由
- 0.151.0の更新とNode.jsの版は別の話
- 「Codexはあるのに起動できない」が起きる仕組み
- 導入前に決める対象と確認場所
- WindowsとmacOS・Linuxでツールを分ける
- nvmが管理するものと管理しないもの
- WindowsでCodex nvmを使う手順
- nvm-windowsの導入状態を確認する
- Node.jsを選び、同じ版へCodex CLIを入れる
- PowerShellでPATHと実体を確認する
- nvm-windowsで切り替えが失敗するとき
- macOS・LinuxでCodex nvmを使う手順
- nvm-shを読み込み、Node.js版を確認する
- 選んだNode.js版へCodex CLIを導入する
- .nvmrcを使うときの注意点
- シェルを変えたときに再確認する
- Codex CLIとNode.jsを同じ表で検証する
- codex --versionとnpmの表示を分けて読む
- Codex CLIの更新とNode.jsの切り替えを分ける
- 版を戻すときに消えたと決めつけない
- Codex nvmで起きやすい問題の切り分け
- codexが見つからない場合
- 古いCodex CLIが表示される場合
- nvm use後にNode.js版が変わらない場合
- プロジェクトごとに必要な版が違う場合
- 導入後に残す確認記録
- 最低限の記録項目
- 更新前後の比較を小さく始める
- デスクトップアプリとCLIを比較するとき
- まとめ
Codex nvmを今確認する理由
Codex CLIをnpmで導入する場合、Node.jsとnpmが動く環境が入口になります。ここでnvmを使うと、複数のプロジェクトが異なるNode.jsの版を要求しても、同じ端末で切り替えて対応できます。ただし、nvmが管理するのはNode.jsの実行環境であり、Codexのモデル、OpenAIアカウント、プロジェクトの内容を管理するものではありません。役割を混ぜないことが、トラブルを短く説明する第一歩です。
2026年8月29日に公開されたCodex CLI 0.151.0の公式リリースをきっかけに、古いCLIを更新したい人も増えています。更新の前にNode.jsを切り替えてしまうと、CLIの場所まで変わって「更新したのに古い版が表示される」「codexコマンドが見つからない」という現象が起きます。先に現在の状態を記録し、Node.jsの切り替えとCLIの更新を一つずつ行うと、結果を比べられます。
0.151.0の更新とNode.jsの版は別の話
Codex CLI 0.151.0という版番号は、Codex CLI本体の更新を示します。Node.js 20や22のような版番号とは別の軸で、nvmでNode.jsを22へ切り替えたからCodexが0.151.0になるわけではありません。反対に、Codex CLIを0.151.0へ更新したから、プロジェクトが要求するNode.jsの版まで変わるわけでもありません。二つの版番号を同じメモに書き、どちらを変えたかを明確にします。
公式リリースページに書かれた変更は、指定されたCLI版の機能や修正に関する情報です。Node.jsの対応範囲やnpmの導入方法は、Codex CLIの公式案内と、利用しているNode.jsの公式資料を照合します。リリース情報を見つけたときも、版番号だけで動作環境を推測しないことが大切です。
「Codexはあるのに起動できない」が起きる仕組み
Node.jsをnvmで切り替えると、npmが使うグローバル保存先も切り替わることがあります。Node.js 20の環境で入れた@openai/codexが、Node.js 22へ移ったあとに見つからないのは、その版ごとに別の保存先を使っているためです。これはCodexのアカウント状態が消えたという意味ではなく、現在のシェルがどの実行ファイルを探しているかを調べる問題です。
WindowsならGet-Command codexとwhere.exe codex、macOS・Linuxならcommand -v codexで呼び出し先を見ます。さらにnode --version、npm --version、npm prefix --global、codex --versionを並べれば、Node.jsの版、npmの保存先、Codex CLIの版を分けて判断できます。
導入前に決める対象と確認場所
Codex nvmの作業を始める前に、どのプロジェクトで、どのNode.jsを使い、どの入口からCodex CLIを導入するかを決めます。デスクトップアプリを使う場合と、npmでターミナル向けCLIを入れる場合では、nvmの影響範囲が同じとは限りません。nvmの記事を読んでいるからといって、アプリ内の実行環境まで切り替わると考えないようにします。
| 確認対象 | 記録する内容 | 判断の目的 |
|---|---|---|
| プロジェクト | フォルダーの場所、要求するNode.js | どの環境を選ぶか決める |
| Node.js | node --version、nvmの選択結果 |
npmが動く版を確認する |
| Codex CLI | codex --version、実行ファイルの場所 |
目的のCLIを呼んでいるか見る |
| npm | npm --version、グローバル保存先 |
CLIの導入先を特定する |
| 入口 | ターミナルかデスクトップアプリか | nvmの影響範囲を分ける |
この表の値は、作業の前後で同じ端末から取得します。別のターミナル、管理者権限の有無、IDE内の統合ターミナルを混ぜると、PATHやホームディレクトリが変わって見える場合があります。まず一つのターミナルで確認し、必要なら別の入口を二つ目の比較対象として記録します。
WindowsとmacOS・Linuxでツールを分ける
Windowsではnvm-windowsの公式リポジトリを、macOS・LinuxなどPOSIX系ではnvm-shの公式リポジトリを確認します。nvm-shはシェル関数として読み込まれる仕組みで、nvm-windowsはWindows向けのNode.js版管理ツールとして動きます。同じnvmという名前でも、インストール手順、管理者権限、設定ファイルの扱いをそのまま置き換えられるわけではありません。
特にWindowsでは、一般のPowerShellと管理者として開いたPowerShellで見えるPATHが異なることがあります。macOS・Linuxでは、bashとzshで読み込む設定ファイルが異なることがあります。公式リポジトリの導入説明を自分のOSとシェルに合わせて読み、そこに書かれた確認方法を優先します。
nvmが管理するものと管理しないもの
nvmが切り替えるのはNode.jsの実行環境と、それに結びついたnpmの利用先です。Codexのログイン状態、モデルの選択、プロジェクトの差分、OpenAIサービスの利用条件を切り替える道具ではありません。Codex CLIを別の方法で導入している場合、その実行ファイルがnvmの管理下にない可能性もあります。
そのため、問題が起きたら「Node.jsが違う」「npmの保存先が違う」「Codex CLIの実行ファイルが違う」「サービス側の応答が違う」のどれかに分けます。この切り分けをしないままNode.jsを何度も入れ替えると、どの変更が効いたのか分からなくなります。
WindowsでCodex nvmを使う手順
Windowsでnpm版のCodex CLIを使う場合は、nvm-windowsでNode.jsを選び、その版に紐づくnpmへCodex CLIを導入します。ここでは具体的な版番号を固定せず、プロジェクトの説明やNode.js公式ダウンロード案内で確認した版を<Node.js版>として表します。すでに別のNode.js版を使っているなら、切り替え前の値を先に保存してください。
nvm-windowsの導入状態を確認する
nvm-windowsの導入後は、PowerShellまたはコマンドプロンプトを開き直し、nvm versionでツール自体が認識されるか確認します。nvm listでインストール済みのNode.jsを表示し、目的の版が一覧にあるかを見ます。見つからない場合は、公式リポジトリにあるインストーラーの説明と、現在の端末で表示されるエラーを照合します。
ここで重要なのは、Node.jsを直接入れた環境とnvm-windowsで管理する環境を混在させないことです。以前のインストーラーが残っていると、PATHの先にある実行ファイルが優先され、nvm useの結果とnode --versionが一致しない場合があります。版番号を変える前に、where.exe nodeで候補の場所を確認すると原因を見つけやすくなります。
Node.jsを選び、同じ版へCodex CLIを入れる
目的のNode.js版が決まったら、次の順番で状態を作ります。<Node.js版>は、プロジェクトで確認した値に置き換えてください。
nvm listで、使いたいNode.js版がインストール済みか確認する。- 必要なら
nvm install <Node.js版>でその版を追加する。 nvm use <Node.js版>を実行して、現在の端末で使う版を選ぶ。node --versionとnpm --versionを実行し、選択結果を確認する。npm install --global @openai/codexで、そのNode.js版のnpmへCodex CLIを導入する。codex --versionとwhere.exe codexで、版番号と実行ファイルの場所を記録する。
すでにCodex CLIを入れている場合も、いきなり再導入せず、手順4と6の結果を先に比べます。Node.js版を替えただけでCLIが見つからなくなったなら、必要な版の環境へ戻すか、現在選んだ版のnpmへ改めて導入します。公式CLI案内に導入方法の更新がないかも、作業日ごとに確認してください。
PowerShellでPATHと実体を確認する
PowerShellでは、次のコマンドを同じ画面で実行すると、Node.js、npm、Codex CLIの関係を確認できます。
node --version
npm --version
npm prefix --global
npm list --global @openai/codex --depth=0
codex --version
Get-Command codex | Select-Object Source
where.exe node
where.exe codex
npm list --globalに表示される版とcodex --versionが違うときは、別のcodexがPATHの先にある可能性があります。where.exe codexが複数行を返す場合は、目的の場所を一つに決め、不要な古い導入先を整理するか、PATHの順番を見直します。表示されたパスに個人情報が含まれる場合は、共有時にフォルダー名を伏せてください。
nvm-windowsで切り替えが失敗するとき
nvm useが完了しない、または切り替え後もNode.js版が変わらない場合は、管理者権限、既存のNode.js、シンボリックリンクの場所、セキュリティソフトによるブロックを順に確認します。nvm-windowsの公式説明にある既知の条件と、自分の端末の表示を比べ、同じコマンドを何度も繰り返す前に原因を一つに絞ります。
管理者として開いたターミナルで切り替わっても、通常のターミナルで戻るなら、両者のPATHや権限が異なります。切り替えた状態でwhere.exe node、node --version、npm prefix --globalを取り、通常のターミナルでも同じ値を取得します。Codex CLIだけが見つからない場合は、Node.jsの問題ではなく、その版のnpmへCLIが入っていないケースを先に疑います。
macOS・LinuxでCodex nvmを使う手順
macOS・Linuxでは、nvm-shをシェルへ読み込んでからNode.jsを選びます。公式リポジトリのREADMEには導入方法、利用可能なコマンド、シェル設定の考え方が記載されています。OS標準のNode.js、Homebrewなど別の導入経路、nvm-shを同時に使うと実体の判定が難しくなるため、どの経路を基準にするかを最初に決めます。
nvm-shを読み込み、Node.js版を確認する
新しいターミナルでcommand -v nvmを実行し、nvmが読み込まれているかを確認します。見つからない場合は、公式READMEのシェル設定を読み、利用中のシェルが読み込む設定ファイルへ必要な記述があるかを確認します。設定を直したあとにターミナルを開き直すか、公式案内に従って現在のシェルへ読み込みます。
Node.js版はnvm lsで一覧を表示し、nvm install --ltsまたはプロジェクトが指定する版の導入を行います。続けてnvm use <Node.js版>を実行し、node --versionとnpm --versionが想定どおりか確認します。--ltsはその時点の長期サポート版を選ぶ指定なので、プロジェクトが特定の版を要求する場合は、プロジェクトの指定を優先します。
選んだNode.js版へCodex CLIを導入する
Node.js版を選んだ同じシェルで、Codex CLIを導入します。コマンドは次のように分けて実行します。
nvm ls
nvm use <Node.js版>
node --version
npm --version
npm install --global @openai/codex
codex --version
command -v codex
npm prefix --global
command -v codexが示す場所と、npm prefix --globalから分かる導入先が対応しているかを確認します。Node.js版を替えてから同じ確認をすると、Codex CLIが見つからなくなる場合があります。そのときは、CLIが消えたと決めつけず、現在のNode.js版に紐づくnpmの一覧を調べ、必要ならその環境へ導入します。
.nvmrcを使うときの注意点
プロジェクトのルートに.nvmrcを置くと、nvm-shで使用するNode.js版をプロジェクトごとに示せます。ファイルには版番号だけを記録し、プロジェクトの説明、依存関係、テスト結果と一致させます。ディレクトリへ移動しただけで全ての環境が同じ状態になるわけではないため、nvm useの結果とnode --versionを確認してからCodex CLIを使います。
Windowsのnvm-windowsでは、nvm-shと同じ.nvmrcの扱いを前提にしない方が安全です。OSが違う開発者へ案内する場合は、Node.jsの版をREADMEなどに明記し、Windowsではnvm use、macOS・Linuxでは.nvmrcとnvm useというように、実際の確認手順まで書き分けます。
シェルを変えたときに再確認する
ターミナルで確認できたCodex CLIが、IDEの統合ターミナルや別のシェルで見つからないことがあります。nvm-shの読み込み、PATH、現在の作業フォルダーが入口ごとに異なるためです。bashとzsh、通常のターミナルと統合ターミナルで、node --version、npm prefix --global、command -v codexを取得し、差分を比べます。
デスクトップアプリの内部環境を、nvmで切り替えたターミナルと同一視しないことも大切です。アプリが独自の更新経路や内蔵ランタイムを使う場合、ターミナルのNode.js版を変えてもアプリ側の版は変わりません。アプリとCLIを比較するときは、製品名、表示された版、起動した場所を別の欄に記録します。
Codex CLIとNode.jsを同じ表で検証する
nvmの設定ができたら、導入成功を「コマンドが一度動いた」だけで判断しません。Node.jsの版、npmの版、Codex CLIの版、実行ファイルの場所を同じ条件で確認します。公式のCodex CLI package.jsonはパッケージの情報を調べる資料になりますが、手元で実際に呼ばれている実行ファイルを置き換えるものではありません。
| 項目 | Windows | macOS・Linux | 何を確認するか |
|---|---|---|---|
| Node.js | node --version |
node --version |
選択した版と一致するか |
| npm | npm --version |
npm --version |
選択したNode.jsに対応するか |
| Codex CLI | codex --version |
codex --version |
目的のCLI版か |
| 場所 | where.exe codex |
command -v codex |
どの実体が呼ばれるか |
| npm保存先 | npm prefix --global |
npm prefix --global |
グローバル導入先が想定内か |
この確認表を更新前と更新後に残せば、Node.jsを替えた結果なのか、Codex CLIを替えた結果なのかを判断できます。チームで共有する場合は、端末固有の絶対パスをそのまま配るのではなく、版番号、導入方法、確認コマンド、期待する結果を中心に書きます。
codex --versionとnpmの表示を分けて読む
npm list --global @openai/codex --depth=0は、現在のnpmが管理するパッケージを表示します。一方、codex --versionはPATHから選ばれた実行ファイルの応答です。前者に0.151.0が出ても、後者が別の版なら、複数の導入先が存在しています。逆に、後者が動いてもnpmの一覧に出ないなら、npm以外の経路から導入したCLIを呼んでいる可能性があります。
この二つを同じものとして扱わず、まず実行ファイルの場所を確認します。Windowsのwhere.exe codex、macOS・Linuxのcommand -v codexで候補が複数出たら、PATHの順番を調べます。パッケージ版、手動で置いた版、別のNode.js版に入れた版が混ざっていないかを確認すると、更新先を選びやすくなります。
Codex CLIの更新とNode.jsの切り替えを分ける
更新の検証では、最初にNode.js版を固定したままCodex CLIだけを更新し、その後に必要ならNode.js版を変えます。CLIの版を固定してNode.js版だけを変える比較も別に行います。一度に二つを変更すると、起動しない、表示が変わった、導入先が見つからないといった結果の原因が分かりません。
現在の安定版、試験版、過去版を比較する場合も、公式のCodexリリース一覧で版と公開日を確認します。0.151.0の変更を確認したいからといって、Node.jsの版まで最新にする必要はありません。プロジェクトが要求する版を維持し、CLI版だけをそろえた小さな比較から始めます。
版を戻すときに消えたと決めつけない
nvmでNode.js 22から20へ戻したあと、Codex CLIが見つからなくなっても、プロジェクトのコードやアカウントが消えたわけではありません。Node.js版ごとにnpmのグローバル保存先が分かれている場合があり、20側へCLIを入れていなければコマンドだけが見えなくなります。現在の版をnode --versionで確認し、npm prefix --globalとnpm list --globalを調べます。
以前のNode.js版に戻すだけでCLIが見えるなら、原因は導入先の違いです。今後もその版を使うなら、プロジェクトの指定に合わせてCLIを導入し直し、codex --versionと実行ファイルの場所を記録します。戻す操作と再導入を同時に行わず、各段階で確認するのがポイントです。
Codex nvmで起きやすい問題の切り分け
エラーの文面だけを見ると、Node.js、npm、Codex CLI、ネットワーク、プロジェクトの問題が一つに見えることがあります。まずコマンドが見つからない問題と、コマンドは起動するが応答が期待と違う問題を分けます。前者はローカルの版やPATH、後者はCLIの設定やサービス側の条件が中心になるため、調べる場所が変わります。
codexが見つからない場合
codexが見つからないときは、最初にnode --versionとnpm --versionを確認します。Node.js自体が見つからなければnvmの読み込みや切り替えが先です。Node.jsは動くのにCodexだけが見つからなければ、npm list --global @openai/codex --depth=0、npm prefix --global、where.exe codexまたはcommand -v codexを確認します。
切り替え直後のシェルが古いPATHを保持している場合は、ターミナルを開き直します。それでも直らなければ、nvmで選んだNode.js版のnpmへCodex CLIを入れたかを確認します。別の版に入れたCLIを探し続けるより、現在の版と導入先をそろえる方が早く解決できます。
古いCodex CLIが表示される場合
古い版が表示される場合は、Codex CLIの更新に失敗したと決めつけず、複数の実体を調べます。Windowsではwhere.exe codex、macOS・Linuxではcommand -v codexを使い、表示された場所ごとに版を確認します。PATHの先頭に古い実行ファイルがあるなら、nvmの切り替えより先にPATHの構成を見直します。
また、グローバルパッケージの版と実行ファイルの版を同じコマンド結果として扱わないでください。npmが見ているNode.js版、Codex CLIが実際に起動した場所、プロジェクトの作業場所を分けて記録すると、古い版が残っている場所を特定できます。
nvm use後にNode.js版が変わらない場合
nvm useを実行したのにnode --versionが変わらない場合は、別のNode.jsがPATHの先にある、ターミナルの権限が不足している、切り替えを実行したシェルと確認したシェルが違う、という順で調べます。Windowsではwhere.exe node、macOS・Linuxではwhich nodeを使い、実体の場所を確認します。
OS標準のNode.jsを残したままnvmへ移行する場合は、どちらを標準にするかを決めてからPATHを整理します。複数の経路を残すなら、プロジェクトごとに使うターミナルと確認コマンドを明記します。版の切り替えを成功と表示しただけで終わらず、node --versionで結果を確定させてください。
プロジェクトごとに必要な版が違う場合
プロジェクトAがNode.js 20、プロジェクトBがNode.js 22を必要とするなら、各フォルダーへ移動したあとにNode.js版を確認し、その環境でCodex CLIを呼びます。Codex CLIはプロジェクトのコードを読むため、対象フォルダーを間違えないこともNode.js版と同じくらい重要です。版とフォルダーを一組として記録すると、別プロジェクトの設定を誤って使いにくくなります。
Windowsでは各プロジェクトの説明にnvm use <Node.js版>を明記し、macOS・Linuxでは.nvmrcの内容とnvm useの確認を明記します。どちらも、作業開始時にnode --versionとcodex --versionを確認する短い手順を置けば、環境を切り替えたあとに古いCLIを呼ぶ問題を見つけられます。
導入後に残す確認記録
Codex nvmの設定は、一度動いたら終わりではなく、次に同じ環境を開く人が再現できる形にします。記録するのは個人の絶対パスではなく、OS、シェル、Node.js版、Codex CLI版、導入経路、確認したコマンドです。0.151.0のようなCLI更新を試すときも、更新前の表を残しておけば差分が見えます。
最低限の記録項目
次の順番で記録すると、nvmの切り替えとCodex CLIの更新が混ざりません。
- 対象プロジェクトの場所と、プロジェクトが要求するNode.js版を書く。
- WindowsならPowerShellかコマンドプロンプトか、macOS・Linuxならbashかzshかを書く。
- nvmの種類と、選択したNode.js版を書く。
node --version、npm --version、npm prefix --globalの結果を残す。codex --versionと実行ファイルの場所を残す。- Codex CLIを更新した場合は、公式リリースページの版と日付を添える。
この記録は、誰かの端末へそのまま貼り付けるためのものではありません。パスの一部にユーザー名や社内フォルダーが含まれる場合は共有前に伏せ、版番号とコマンドの関係だけを残します。環境を再現する人が必要な情報を読め、個人固有の情報は広がらない状態を目指します。
更新前後の比較を小さく始める
更新を試すときは、まず読み取り専用の確認と小さなプロジェクトで行います。Node.js版を変えずにCodex CLIを更新した結果、次にNode.js版だけを変えた結果というように、一つの変数を動かします。差分の確認、テスト、生成物の読み直しまで同じ条件で行えば、版の違いと作業内容の違いを分けられます。
公式資料のURLも記録します。Codex CLIの導入はOpenAI公式ドキュメント、版の変更はOpenAI Codexのリリース一覧、Node.js版管理はnvm-shまたはnvm-windowsを基準にします。検索結果の断片ではなく、更新される公式ページを直接確認することが重要です。
デスクトップアプリとCLIを比較するとき
Codexのデスクトップアプリとnpm版のCodex CLIを比べる場合は、同じ製品の別画面として一つにまとめないようにします。CLIは現在のターミナル、Node.js、npm、PATHの影響を受けますが、アプリは独自の配布と更新の仕組みを持つことがあります。アプリの表示版とCLIのcodex --versionを別々に残し、nvmの切り替えがどちらへ作用したかを確認します。
比較する作業も、同じプロジェクトの読み取りや短い確認から始めます。モデル名、CLI版、アプリ版、Node.js版、実行場所を一つの表に書けば、結果の差を「Node.jsを替えたから」「CLI版が違うから」「入口が違うから」と説明しやすくなります。単に新しい方を選ぶのではなく、目的の作業に必要な入口を判断してください。
まとめ
Codex nvmの要点は、nvmでNode.jsの版を切り替え、その版に紐づくnpmへCodex CLIを導入し、node --version、npm prefix --global、codex --version、実行ファイルの場所を同じ条件で確認することです。Windowsではnvm-windows、macOS・Linuxではnvm-shを使い分け、OSごとの公式説明に合わせてシェルと権限を確認します。
2026年8月29日公開のCodex CLI 0.151.0を試すときも、Node.jsの変更とCLIの変更を同時に進めないことが大切です。古い版が出る、コマンドが見つからない、切り替え後にnpmの一覧が変わるといった問題は、Node.js、npmの保存先、PATH、CLIの実体を分けて調べれば整理できます。最後に公式のCodex CLI案内、0.151.0リリース、nvm公式資料を確認し、版番号と確認日を記録してから普段のプロジェクトへ戻りましょう。