コンテンツにスキップ

Codex CLIをアップデートする方法: codex updateとPATH重複の確認

Codex CLI 完全ガイド

この記事で解決できること

現在のCodex CLIアップデートコマンドを確認する 更新後も古いCodexが起動する原因を切り分ける 今後のアップデートでPATH重複を起こさない状態にする

検索意図が 「update codex cli」 なら、最初の答えは codex update だ。現在のCodex CLIコマンドリファレンスでは、codex update はインストール済みリリースがセルフアップデートに対応している場合にCodex CLI更新を確認し、適用する安定コマンドとして扱われている。

ただし、codex update が使えない、インストール方法を検出できない、または codex --version が古いままの場合がある。その場合の本質は「どう更新するか」ではなく、「いまシェルがどの codex 実行ファイルを起動しているか」だ。PATH重複、シェルキャッシュ、複数インストール経路を順番に確認する。

現在の答え

codex update
codex --version

インストール方法を検出できないと表示された場合は、最初に使ったインストール経路で更新し直し、その後に実行ファイルのパスを確認する。

この記事の対象者

  • Codex CLIの現在のアップデート方法を知りたい開発者
  • 更新後も古いCodex CLIが起動する開発者
  • チーム内のCodex CLIバージョン差異を減らしたいリードエンジニア

この記事のポイント

  1. まず codex update を実行する。
  2. 古いままなら、PATH上の codex 実行ファイルをすべて確認する。
  3. 1台につきインストール経路を1つに統一する。

なぜCodex CLIアップデートが反映されないのか

更新が反映されない原因は、主に4つだ。

主な原因

codex update は、インストール済みリリースがセルフアップデートに対応し、かつCodex側がインストール方法を識別できる場合に機能する。検出できない場合は、現在の codex を作成したインストーラーまたはパッケージマネージャーで更新する。

複数経路でCodexを入れると、複数の codex 実行ファイルが残る。特にWindowsでは %AppData%\npm%LOCALAPPDATA%\Programs\OpenAI\Codex\bin、手動配置したファイルが混在しやすく、PATH上で古い方が優先されることがある。

BashやZshは一度実行したコマンドの場所をキャッシュする。アップデート後に新しいターミナルを開かない、または hash -r / rehash を実行しない場合、古いパスが使われ続ける。

GitHub Issue #4986では、codex --version が誤ったリリースを返すケースが報告されていた。ただしIssueはクローズ済みなので、現在は最初から表示バグと決めつけず、PATHとインストール経路を先に確認する。

WindowsはWSLだけではない

現在のCodex公式ドキュメントでは、Codex CLIはmacOS、Windows、Linuxで利用できる。WindowsではPowerShell上でネイティブ実行しWindows sandboxを使う方法と、Linuxネイティブ環境が必要な場合にWSL2を使う方法がある。最初からWSL前提にせず、作業環境とサンドボックス要件で選ぶ。

update codex cli の3分診断

まず現在のアップデートコマンドを実行する。

codex update
codex --version

これで解決した場合は、追加作業は不要だ。失敗する、または古いバージョンのまま見える場合は、実行ファイルの場所を確認する。

# macOS / Linux / WSL
which -a codex
command -v codex
# Windows PowerShell
Get-Command codex -All | Select-Object -Expand Source
where.exe codex

複数パスが出る場合、どこかのCodexは更新されていても、ターミナルが別の古い実行ファイルを起動している可能性が高い。

削除前に新しいターミナルで確認する

更新後は必ず新しいターミナルを開く。同じBash/Zshセッションを使い続ける場合は、確認前に hash -r または rehash を実行する。

確実にアップデートする3ステップ

この順番で確認する。codex update で解決する場合に、不要な再インストールを避けられる。

Step 1: セルフアップデートを実行する

codex update
codex --version
codex doctor --summary

利用中のバージョンに codex doctor --summary がない場合は、その行だけスキップする。古いCLIでは現在の診断コマンドが揃っていないことがある。

Step 2: 元のインストール経路で更新する

codex update がインストール方法を検出できない場合は、現在の codex を入れた経路で更新する。

# macOS / Linux / WSL のスタンドアロンインストーラー
curl -fsSL https://chatgpt.com/codex/install.sh | sh
# Windows PowerShell のスタンドアロンインストーラー
irm https://chatgpt.com/codex/install.ps1 | iex

npmまたはHomebrewで意図的に管理している場合は、別経路を混ぜず、同じ経路で更新する。

# npmで管理している場合
npm install -g @openai/codex@latest

# Homebrewで管理している場合
brew upgrade codex || brew install codex

Step 3: パス確認後にだけ重複を削除する

いきなり全削除しないで、まず重複があることを確認する。

# macOS / Linux / WSL
which -a codex
hash -r
codex --version
# Windows PowerShell
Get-Command codex -All | Select-Object -Expand Source
codex --version

不要な経路が残っている場合だけ、その管理方法に合わせて削除する。

# npm管理のCodexを削除
npm uninstall -g @openai/codex

# Homebrew管理のCodexを削除
brew uninstall codex

スタンドアロンインストールの場合は、古いと確認できた実行ファイルだけを削除する。Windowsでは、手動配置ファイルを削る前に %LOCALAPPDATA%\Programs\OpenAI\Codex\bin を確認する。

成功の確認ポイント

意図した codex パスが1つになり、新しいターミナルで codex --version が更新後のCLIを表示すれば完了だ。

よくあるトラブルと対処法

症状原因解決策
codex update がインストール方法を検出できない現在のインストール経路をアップデーターが識別できないスタンドアロンインストーラー、または最初に使ったパッケージマネージャーで更新
codex update コマンドがないCLIが古い元のインストール経路で更新し、以後は codex update を使う
更新成功後も codex --version が古いPATHの優先順位またはシェルキャッシュwhich -a codex / Get-Command codex -All を確認し、新しいターミナルで再確認
npx -y @openai/codex@latest --version だけ新しいnpmパッケージは新しいがPATHが別の実行ファイルを向いているPATH順序を直すか、古いグローバルバイナリを削除
Windowsネイティブ運用が不安定Windows sandboxまたはローカルポリシーの問題まずネイティブWindows sandboxを確認し、必要ならWSL2へ切り替える
VS Code/Cursor拡張が古いまま拡張側のバージョン差異拡張を手動更新し、エディタを再起動
VS Code拡張の更新手順
  1. VS Codeの拡張タブを開く
  2. OpenAI Codex 拡張を検索
  3. Update をクリック
  4. VS Codeを完全に再起動する
  5. Codexサイドバーでサインインし直す

まとめ

update codex cli の現在の第一手はこれだ。

codex update

それで解決しない場合は、推測で再インストールを繰り返さず、実行ファイルの場所、インストール経路、新しいターミナルでの再確認、古いパスの削除という順番で進める。

各マシンのインストール経路を1つに統一し、通常の更新を codex update に寄せると、今後のバージョン差異を抑えやすくなる。

次のステップ

参考リンク