複数のOpenAI Codexログイン状態を保存し、コマンド1つで即時切り替え。再ログイン不要。
Windows・Linux・macOS対応。
事前にGitのインストールが必要です。Gitがない場合はこちら
各CodexアカウントのAuthトークンを独立したプロファイルとして保存。互いに干渉しません。
cx switch でインタラクティブメニューを開き、Enterを押すだけ。実行中のCodexを自動終了してアカウントを切り替えます。
Codex終了後に自動でリミット状態をスキャン。どのアカウントが上限に達し、いつリセットされるかが一目でわかります。
config・hooks・セッション履歴はすべて共有。切り替わるのはAuthトークンのみで、他には影響しません。
| 項目 | 場所 | 切替 / 共有 |
|---|---|---|
| アカウントの auth token | ~/.codex/auth.json | プロファイルごとに切替 |
| 設定・hooks | ~/.codex/config.toml、hooks.json | 共有 |
セッション・/resume 履歴・sqlite 状態 | ~/.codex/ | 共有 |
| skills・plugins | ~/.codex/ | 共有 |
auth.json(アカウントの token)だけで、それ以外はすべて共有です。codex ラッパー経由で起動すると通常の ~/.codex が使われるため、会話・/resume・設定はアカウント間で共有されます。cx login は隔離した一時ホームでログインし、保存済みの他アカウントには一切触れません。そのため複数アカウント(同一 ChatGPT アカウント配下の複数ワークスペースを含む)が互いをログアウトさせずに共存できます。
Win + X を押して「Windows PowerShell」または「ターミナル」を選択し、下記コマンドをコピーして貼り付け(Ctrl+V)、Enterを押してください。
PS> irm https://raw.githubusercontent.com/yazelin/codex-auth-switcher/main/install-oneliner.ps1 | iex
インストール完了後、ターミナルに次の手順が自動で表示されます。
すでにCodexにログイン済みの場合は、下記コマンドで現在のログイン状態を「main」というプロファイル名で保存します:
PS> cx import main
「main」は任意の名前です。自分の名前やアカウントのニックネームでも構いません。
cx login に任意の名前を付けて実行すると、Codexのログイン画面が開きます:
PS> cx login work
# ログイン完了後、workプロファイルが保存されます
PS> cx list
CURRENT PROFILE LOGIN EMAIL PLAN LIMIT
* main ok ma***@gmail.com plus -
work ok wo***@company.com team -
* は現在使用中のアカウントを示します。
最も推奨される切り替え方法です。実行中のCodexを自動終了してから切り替えます:
PS> cx switch
PS> codex
今後は codex(元のcodex.exeを直接実行するのではなく)で起動することで、切り替えが正しく反映されます。
$ bash <(curl -fsSL https://raw.githubusercontent.com/yazelin/codex-auth-switcher/main/install-oneliner.sh)
$ source ~/.bashrc
# zshユーザーは代わりに:source ~/.zshrc
$ cx import main # 既存アカウントを保存
$ cx login work # 2つ目のアカウントを追加
$ cx use work # workアカウントに切り替え
$ codex # Codexを起動
青色ハイライト = 現在選択中のアカウント / * = 現在使用中 / !hit = 使用量上限に達しています
| コマンド | 説明 |
|---|---|
cx switch [--live]NEW | インタラクティブメニューでアカウントを切り替え、Codexを自動終了してから実行;--live を付けると切り替え前に使用量を更新 |
cx killNEW | 実行中のすべてのCodexプロセスを即時終了 |
cx import <名前> | 現在のログイン状態をプロファイルとして保存 |
cx login <名前> | Codexのログイン画面を開き、新しいプロファイルとして保存 |
cx use <名前> | 共有のアクティブプロファイルを切り替え |
cx list [--live] | 全プロファイルとその状態を一覧表示;--live を付けると使用量を更新してから表示 |
cx usage [name|--all] | ライブ使用量を更新;引数なしで全プロファイルを更新 |
cx info [名前] | 指定したプロファイルの詳細情報を表示 |
cx current | 現在使用中のプロファイル名を表示 |
cx remove <名前> | プロファイルを削除 |
cx ps | 現在検出されているCodexプロセスを表示 |
cx doctor | 診断ツール:パス・プロセス状態・プロファイル概要を表示 |
cx export profiles.tgz | 全プロファイルを圧縮ファイルにバックアップ |
cx restore profiles.tgz | 圧縮ファイルからプロファイルを復元 |
cx ok <名前> | 指定したプロファイルの使用量制限フラグを手動で解除 |
cx help | 内蔵コマンドのヘルプを表示 |
codex | 現在のプロファイルでCodexを起動 |
Windows:PowerShellで以下を実行してください:
インストール後、PowerShellを閉じて再度開くとgitが使えるようになります。
Linux(Ubuntu/Debian):
macOS:ターミナルで git と入力すると、macOSがXcode Command Line Toolsのインストールを自動的に促します。
WindowsがPowerShellスクリプトの実行をブロックすることがあります。下記コマンドで制限を解除してから、インストールコマンドを再度貼り付けてください:
インストールコマンドはPowerShellプロファイルに設定を追記しますが、PowerShellを再起動しないと反映されません。それでも使えない場合は、プロファイルファイルに下記の行が含まれているか確認してください:
. "C:\Users\あなたの名前\codex-auth-switcher\shell\powershell.ps1" という行があるはずです。ない場合は手動で追加して保存し、PowerShellを再起動してください。
cx switch はWindows Terminal・PowerShellウィンドウなどのインタラクティブなターミナル環境で実行する必要があります。VS CodeのOutputパネルやCI環境では使用できません。
代替手段として、cx use <名前> で直接切り替えることができます。
できます。codex ラッパー経由で起動した場合、Codexは通常の ~/.codex を使用するため、同じアクティブプロファイルで2つまたは3つ同時に起動でき、/resume 履歴も共有されます。cx use や cx login など auth.json を変更する操作は、Codex実行中には拒否されます。実行中にアカウントが切り替わってしまうことを防ぐためです。
されません。すべてのAuthトークンはお使いのPC上の ~/.codex_auth_profiles/ フォルダにのみ保存され、いかなるサーバーにも送信されません。このツールは完全にローカルで動作します。
~/.codex_auth_profiles/ フォルダをGitリポジトリにコミットしないようにしてください。
そのアカウントがCodexの使用上限に達しており、表示されている時刻がリセット時刻です。リセット後に cx list を実行するとこのフラグは自動的に消去されます。
リセット済みのはずなのにフラグが残っている場合は、手動で解除できます:cx ok <名前>