Codex Chat
Claude Code と Codex が tmux でチャットするスキル。
前提条件(実行前に確認)
- tmux セッション内で実行すること(
tmuxコマンドが動作する環境) codexCLI がインストール済み- Codex 認証済み(
codex loginまたはOPENAI_API_KEY)
役割分担(重要)
| AI | 役割 | 担当タスク |
|---|---|---|
| Claude Code | 実装担当 | コード作成・編集・ファイル操作・テスト実行 |
| Codex | 相談役 | 設計相談・レビュー・セカンドオピニオン・質問回答 |
Codex に実装を依頼しないこと。 Codex から設計提案やレビューを受けて、Claude Code が実装する。
セットアップ
Codex ペイン作成
現在のウィンドウを水平分割し、右側ペインで Codex を起動:
# 3つの Bash コマンドを順番に実行(send-keys は && で連結しないこと)
tmux split-window -h
tmux send-keys "codex"
tmux send-keys Enter
split-window -h: 水平分割(左右に分かれる)- 新しいペインがアクティブになるが、Claude Code は元のペインで継続
- 重要:
tmux send-keysは&&で連結せず、別々の Bash コマンドとして実行することsleep && tmux capture-paneのような組み合わせは OK
ペイン番号の確認
tmux list-panes -F "#{pane_index}: #{pane_current_command}"
通常、Claude Code が pane 0 または 1、Codex が pane 1 または 2 になる。
重要: 以降のコマンド例では :.1 を使用しているが、実際のペイン番号に置き換えること。list-panes の結果で Codex が動作しているペイン番号を確認し、:.1 → :.2 などに適宜変更する。
チャット
Codex に質問
# 2つの Bash コマンドを順番に実行(&& で連結しないこと)
tmux send-keys -t :.1 "質問内容"
tmux send-keys -t :.1 Enter
-t :.1: 現在のウィンドウのペイン 1 を指定- 重要: テキスト送信と Enter 送信は別々の Bash コマンドとして実行
&&で連結すると Enter が送信されないことがある
Codex の返信を確認(待機付き)
sleep 30 && tmux capture-pane -t :.1 -p -S -100
-S -100: スクロールバッファから過去100行を取得- 応答が長い場合は
sleepの秒数を増やす - 「Working」表示中は処理中なので追加で待機する
Codex ペイン終了
tmux kill-pane -t :.1
ワークフロー
/codex-collabでペイン作成・Codex 起動- Codex に相談・質問を送信
- 返信を確認(sleep で待機)
- Codex の提案を受けて Claude Code が実装
- 必要に応じて Codex にレビュー依頼
- ペイン終了
使用例
設計相談 → Claude Code が実装
User: "Codex と認証機能について相談したい"
Claude:
1. Codex ペイン作成(3つの Bash コマンドを順番に実行)
Bash(tmux split-window -h)
Bash(tmux send-keys "codex")
Bash(tmux send-keys Enter)
Bash(sleep 5) # Codex 起動待ち
2. Codex に設計相談(2つの Bash コマンドを順番に実行)
Bash(tmux send-keys -t :.1 "JWT vs セッションベース認証、どちらを推奨しますか?理由も教えて")
Bash(tmux send-keys -t :.1 Enter)
3. 返信を確認(待機後にキャプチャ)
Bash(sleep 30)
Bash(tmux capture-pane -t :.1 -p -S -100)
4. Codex の提案を受けて Claude Code が実装
Write/Edit ツールでコード作成
5. 実装後、Codex にレビュー依頼(2つの Bash コマンドを順番に実行)
Bash(tmux send-keys -t :.1 "この実装をレビューして: [コード概要]")
Bash(tmux send-keys -t :.1 Enter)
6. 終了(ペインのみ閉じる)
Bash(tmux kill-pane -t :.1)
Codex への適切な質問例
- 「この設計アプローチについてどう思う?」
- 「AとBどちらのパターンを推奨する?」
- 「この実装のセキュリティリスクは?」
- 「パフォーマンス改善のアイデアある?」
- 「このコードをレビューして」
不適切な依頼例(避けること)
- 「このコードを実装して」
- 「ファイルを作成して」
- 「テストを書いて」
注意事項
codex execは使わないこと(MCP サーバー起動オーバーヘッド回避)- ペインでインタラクティブモードを使用(バックグラウンドではない)
- 長い質問はファイル経由で送信可能
- 「Working」表示中は追加で待機が必要
&&で連結しないこと: tmux コマンドは別々の Bash 呼び出しで実行
Codex 固有の環境変数
| 環境変数 | 説明 | デフォルト |
|---|---|---|
CODEX_WAIT_SHORT |
短い質問の待機時間(秒) | 30 |
CODEX_WAIT_LONG |
複雑な分析の待機時間(秒) | 120 |
CODEX_POLL_INTERVAL |
ポーリング間隔(秒) | 30 |
CODEX_MAX_RETRIES |
最大リトライ回数 | 5 |
待機時間・リカバリー
待機時間の目安、ポーリング戦略、タイムアウト時の対応、自動リカバリーフロー(サーキットブレーカー含む)は共通ガイドを参照:
参照:
skills/tmux-ai-chat/references/recovery-guide.md
Codex 固有の完了判定: プロンプト › が最終行に表示されたら応答完了。
Converted and distributed by TomeVault — claim your Tome and manage your conversions.