OpenSource-Hub

codex-plugin-cc

その他

openai/codex-plugin-cc

Claude Code で Codex を使用してコードレビューやタスクの委任を行うプラグイン。

概要

Claude Code 向けのプラグイン。OpenAI の Codex を統合し、スラッシュコマンドを通じてコードレビュー、タスク委譲、バックグラウンドジョブを実現します。レビュー、アドバーサリアルレビュー、トランスファー、レスキューのワークフローをサポートしています。

README プレビュー

# Codex plugin for Claude Code\n\nUse Codex from inside Claude Code for code reviews or to delegate tasks to Codex.\n\nThis plugin is for Claude Code users who want an easy way to start using Codex from the workflow\nthey already have.\n\n\n\n## What You Get\n\n- `/codex:review` for a normal read-only Codex review\n- `/codex:adversarial-review` for a steerable challenge review\n- `/codex:rescue`, `/codex:transfer`, `/codex:status`, `/codex:result`, and `/codex:cancel` to delegate work, hand off sessions, and manage background jobs\n\n## Requirements\n\n- **ChatGPT subscription (incl. Free) or OpenAI API key.**\n  - Usage will contribute to your Codex usage limits. [Learn more](https://developers.openai.com/codex/pricing).\n- **Node.js 18.18 or later**\n\n## Install\n\nAdd the marketplace in Claude Code:\n\n```bash\n/plugin marketplace add openai/codex-plugin-cc\n```\n\nInstall the plugin:\n\n```bash\n/plugin install codex@openai-codex\n```\n\nReload plugins:\n\n```bash\n/reload-plugins\n```\n\nThen run:\n\n```bash\n/codex:setup\n```\n\n`/codex:setup` will tell you whether Codex is ready. If Codex is missing and npm is available, it can offer to install Codex for you.\n\nIf you prefer to install Codex yourself, use:\n\n```bash\nnpm install -g @openai/codex\n```\n\nIf Codex is installed but not logged in yet, run:\n\n```bash\n!codex login\n```\n\nAfter install, you should see:\n\n- the slash commands listed below\n- the `codex:codex-rescue` subagent in `/agents`\n\nOne simple first run is:\n\n```bash\n/codex:review --background\n/codex:status\n/codex:result\n```\n\n## Usage\n\n### `/codex:review`\n\nRuns a normal Codex review on your current work. It gives you the same quality of code review as running `/review` inside Codex directly.\n\n> [!NOTE]\n> Code review especially for multi-file changes might take a while. It's generally recommended to run it in the background.\n\nUse it when you want:\n\n- a review of your current uncommitted changes\n- a review of your bran

FAQ (5)

トラブル対応
Codex review/adversarial-review で発生する HTTP 400: 'gpt-5.6-sol model requires a newer version of Codex' エラーを修正するにはどうすればよいですか?

これは、Codex デスクトップアプリが共有の ~/.codex/config.toml に model = "gpt-5.6-sol" を書き込むものの、npm CLI(@openai/codex の 0.145.0 まで)がそのモデルを使用できない場合に発生します。review および adversarial-review のパスはこのデフォルトを継承して失敗しますが、通常の task ターンは動作する場合があります。

回避策:

1. review 呼び出しには npm CLI がサポートするモデルを使用します。例:

node scripts/codex-companion.mjs review --wait --scope working-tree --model gpt-5.5

2. プラグインのコマンドテンプレートを編集している場合は、--model gpt-5.5 を引用符で囲まれた引数ブロブの内側に記述してください:

review "$ARGUMENTS --model gpt-5.5"

これを個別の引数として渡すと、normalizeArgv がそのブロブをフォーカステキストとして扱ってしまう可能性があります。

3. または、共有の ~/.codex/config.toml のデフォルトを変更します:

model = "gpt-5.5"

npm CLI を 0.142.1 から 0.145.0 にアップグレードしてもこの問題は解決しません。現在リリースされている npm CLI はいずれも gpt-5.6-sol を受け付けないためです。

参照 Issue #561
トラブル対応
Git Bash で codex-companion cancel を実行した際の taskkill "Invalid argument/option - 'C:/Program Files/Git/PID'" エラーの修正方法

Git Bash/MSYS は /PID 引数を Windows のパスに変換します。Windows フォールバックを PowerShell に置き換えてください: powershell.exe -NoProfile -Command "Stop-Process -Id <pid> -Force"。一時的な手動の回避策として、これを PowerShell から実行してください。taskkill を使い続ける場合は、MSYS_NO_PATHCONV=1 を先頭に付けるか、ダブルスラッシュでフラグをエスケープしてください: MSYS_NO_PATHCONV=1 taskkill /PID <pid> /T /F または taskkill //PID <pid> //T //F。

参照 Issue #331
トラブル対応
'/codex:transfer' が Windows でスレッドが作成されているにもかかわらず "did not record an imported thread" と報告する問題を修正する方法

これは Windows における誤検出のインポート後ルックアップ失敗です。インポート自体は成功しますが、レジャーがパスを \\?\ 拡張長プレフィックス付きで保存する一方、Node の realpathSync() では付かないため、プラグインがレジャーレコードのマッチングに失敗します。さらに、ライブの Claude トランスクリプトがインポート後に変更されるため、コンテンツハッシュチェックが失敗します。

即時の回避策: %USERPROFILE%\.codex\external_agent_session_imports.json を開き、有効な imported_thread_id を持つ最新のレコードを見つけて、codex resume <imported_thread_id> を実行してください。

恒久対応: scripts/lib/codex.mjs で importedThreadIdForSource() を更新し、\\?\ の除去、/ から \ への変換、Windows 上での小文字化によって両方のパスを正規化したうえで、正規化された source_path と空でない imported_thread_id でレコードをマッチさせます。content_sha256 は優先条件として扱い、ハッシュが完全一致する最新のマッチが存在すればそれを使用し、そうでなければ null を返す代わりにそのソースパスに対する最新のインポートにフォールバックしてください。

影響が確認された環境: codex@openai-codex v1.0.6、Codex CLI 0.144.2、Node v24.15.0、Windows 11。

参照 Issue #513
トラブル対応
WindowsでCodexのバックグラウンドタスクを実行する際に発生する「EPERM: operation not permitted, unlink broker.pid」エラーを修正する方法

codex-plugin-cc を v1.3.0 以降にアップグレードしてください。このリリースでは、broker の pid/log ファイルの削除がベストエフォート方式になり、ロックされたファイルや同時に削除されたファイルに起因する Windows の EPERM エラーによって broker のティアダウンが中断され、ジョブが失敗することがなくなりました。すぐにアップグレードできない場合は、plugins/codex/scripts/lib/broker-lifecycle.mjs にパッチを適用し、ガードされていない fs.unlinkSync(pidFile) と fs.unlinkSync(logFile) の両方の呼び出しを try/catch で囲み、EPERM と ENOENT を無視してください(あるいは、他のガード済みのティアダウン処理と同様に、すべてのクリーンアップエラーを無視してください)。アップグレードまたはパッチ適用後に Codex タスクを再起動してください。

参照 Issue #633
トラブル対応
WindowsのGit Bashで`codex-companion cancel`が`taskkill exit=1`で失敗するのはなぜですか?

Git Bash/MSYS は、$SHELL 経由でコマンドが起動されると、/PID、/T、/F などの taskkill フラグを Windows パスに変換するため、taskkill は無効な引数を受け取ります。

**推奨される修正:** プロセスツリーを終了する際に、scripts/lib/process.mjs 内でシェルを介さずに taskkill.exe を直接 spawn します:

spawnSync('taskkill.exe', ['/PID', String(pid), '/T', '/F'], {
  shell: false,
  windowsHide: true,
});

あるいは、Windows のシェルオプションを process.env.SHELL ではなく常に cmd.exe を使用するように変更します:

shell: process.platform === 'win32' ? true : false

**即時の回避策:** SHELL を削除した状態で cancel コマンドを実行します:

env -u SHELL node codex-companion.mjs cancel <jobId> --json

別の Node プロセスから codex-companion を spawn する場合は、Windows では子プロセスの環境から SHELL を削除します:

const env = { ...process.env };
if (process.platform === 'win32') delete env.SHELL;

ローカライズされた Windows バージョンでは、英語のエラーメッセージの正規表現のみに依存するのではなく、taskkill の終了コード 128 も「プロセスが見つかりません」として処理してください。

参照 Issue #182