| name | codex-advisor |
| description | 作業中に行き詰まったとき、OpenAI Codex CLIをセカンドオピニオンとして呼び出すスキル。現在の問題・コード・エラーをCodexに渡し、別の視点からのアドバイスや解決策を得る。トリガー: ユーザが「Codexに聞いて」「セカンドオピニオンを得て」「Codexの意見を聞かせて」と依頼したとき。 |
Codex Advisor
Claude Codeで行き詰まったとき、OpenAI Codex CLIに問い合わせてセカンドオピニオンを得るスキル。
ワークフロー
Step 1: 問題のコンテキストを整理する
ユーザの依頼から以下の情報を収集する:
- 現在取り組んでいる問題・タスク
- 関連するコードやエラーメッセージ(会話の文脈から取得)
- これまでに試したアプローチとその結果
- Codexに聞きたい具体的な質問
Step 2: Codexへのプロンプトを構築する
収集した情報を元に、Codexに渡すプロンプトを作成する。
プロンプトの構成例:
以下の問題について、解決策やアドバイスをください。
## 問題
[問題の説明]
## 試したこと
[これまでのアプローチ]
## 関連コード / エラー
[コードスニペットやエラーメッセージ]
## 質問
[Codexへの具体的な質問]
Step 3: Codex CLIを呼び出す
Bashツールで codex exec を実行し、出力を一時ファイルに書き出す。セッション競合を避けるため mktemp で一意なファイルパスを生成する。
OUTFILE=$(mktemp /tmp/codex-advisor-XXXXXX.md)
echo "output: $OUTFILE"
timeout 120 codex exec --ephemeral \
-o "$OUTFILE" \
--skip-git-repo-check \
"プロンプト内容"
オプションの説明:
--ephemeral: セッションファイルをディスクに保存しない(不要な履歴蓄積を防止)
-o "$OUTFILE": 最後のメッセージをプレーンテキスト/Markdown形式で指定ファイルに書き出す(Readツールでそのまま読み取り可能)
--skip-git-repo-check: Gitリポジトリ外でも動作させる
timeout 120: 120秒でタイムアウトさせる(ハング防止)
プロンプトにコードブロック(```)またはバッククォート(`)が含まれる場合は必ずヒアドキュメントを使う。改行のみであればどちらの形式でも可。
OUTFILE=$(mktemp /tmp/codex-advisor-XXXXXX.md)
echo "output: $OUTFILE"
timeout 120 codex exec --ephemeral \
-o "$OUTFILE" \
--skip-git-repo-check \
"$(cat <<'EOF'
以下の問題について...
## コード
```python
def foo():
pass
EOF
)"
`'EOF'` をシングルクォートで囲むことで、ヒアドキュメント内の `` ` `` や `$` が展開されずそのままCodexに渡される。
### Step 4: 出力を読み取り、一時ファイルを削除する
`mktemp` は生成したパスを標準出力に出力する。Step 3 の Bash ツール実行後の出力に表示されたそのパス(例: `/tmp/codex-advisor-abc123.md`)を使って Read ツールを呼び出す。`$OUTFILE` はシェル変数のため Bash ツール呼び出しをまたいで参照できない点に注意。
読み取り後は Bash ツールで削除する。
```bash
rm -f "/tmp/codex-advisor-abc123.md" # Step 3 の出力で確認した実際のパスを指定
Step 5: 結果をユーザに詳細に解説する
Codexの回答を単に再掲したり短く要約するだけにしないこと。Claudeが積極的に補足・解説を加え、ユーザが深く理解できる回答を構成する。
以下の構成テンプレートに沿って出力する:
1. Codexの回答の各ポイントに対するClaudeの見解
各要点について、以下のいずれかを行う:
- 同意する場合: なぜその考え方が正しいかを補足説明する
- 補足する場合: Codexが触れていない重要な文脈や前提条件を加える
- 訂正する場合: 誤りや不正確な点を明確に指摘し、正しい情報を提示する
2. Codexが触れていない実践的な知識の補足
- 実装時のよくある落とし穴と回避方法
- パラメータ調整の具体的な指針(数値の目安、設定の根拠)
- エッジケースや境界条件の扱い
3. 理解を深める要素の追加
トピックに応じて、以下を積極的に用いる:
- 図解(ASCII art)による直感的な説明
- 数式の具体的な数値テーブルによる挙動の可視化
- 他の手法・アプローチとの比較表
- ステップバイステップの具体例やサンプルコード
4. まとめと推奨アクション
- Codexの提案のうち採用すべき点と注意すべき点を整理する
- 次に取るべき具体的なアクションを提示する
注意事項
- Codexはファイルシステムへの読み書きを試みることがある。
--ephemeral を必ず付けてセッションを汚染しないようにする
- タイムアウトが発生した場合は、プロンプトを短くして再試行する
- Codexの回答はそのまま採用せず、Claude自身の判断でフィルタリングして提示する