Codex スキルガイド
タスクの実行
- 新しいセッションの場合(再開時は元のモデル/努力レベルを継承 – ステップ5参照)、ユーザーに(
AskUserQuestion経由で)使用するモデルと推論努力レベルを2つの質問を1つのプロンプトで尋ねます。ユーザーが特に指定しない場合、デフォルトはgpt-6-astraのhighとします。- モデル — デフォルト
gpt-6-astra:- GPT-6:
gpt-6-astra(最先端 / 最も高機能 — デフォルト) - GPT-5.6:
gpt-5.6-sol(信頼性の高いエージェント作業向け)、gpt-5.6-terra(バランス型、日常利用)、gpt-5.6-luna(高速&低コスト) - Legacy(互換性維持):
gpt-5.5、gpt-5.4、gpt-5.4-mini、gpt-5.3-codex-spark、gpt-5.3-codex
- GPT-6:
- 推論努力レベル — デフォルト
high:low、medium、high、xhigh、max、ultra。max/ultraは GPT-6 または GPT-5.6 モデルが必要。ultraはastra/sol/terraのみ(lunaはmaxまで)。Legacy モデルはxhighまで。ultra= 最大推論 +自動タスク委任(最も低速かつ高コスト – 最も難しいジョブに限定)。- 選択された努力レベルがモデルの上限を超える場合、そのモデルでサポートされる最高レベルにフォールバックし、その旨をユーザーに伝えます。
- モデル — デフォルト
- タスクに必要なサンドボックスモードを選択。デフォルトは
--sandbox read-onlyとしますが、編集やネットワークアクセスが必要な場合は適宜変更。 - 適切なオプションでコマンドを組み立てます:
-m, --model <MODEL>--config model_reasoning_effort="<low|medium|high|xhigh|max|ultra>"(max/ultra は GPT-6 / GPT-5.6 モデルのみ。ultra は astra/sol/terra のみ – ステップ1参照)--sandbox <read-only|workspace-write|danger-full-access>--full-auto-C, --cd <DIR>--skip-git-repo-check"your prompt here"(最後の位置引数として)
- 常に
--skip-git-repo-checkを使用します。 - 以前のセッションを継続する場合、stdin 経由で
codex exec --skip-git-repo-check resume --lastを使用します。再開時は、ユーザーが明示的にモデルや推論努力レベルを指定しない限り、設定フラグは使用しません。再開構文:echo "your prompt here" | codex exec --skip-git-repo-check resume --last 2>/dev/null。すべてのフラグは exec と resume の間に挿入する必要があります。 - 重要: デフォルトで、すべての
codex execコマンドに2>/dev/nullを追加して思考トークン(stderr)を抑制します。ユーザーが明示的に思考トークンの表示を要求した場合やデバッグが必要な場合のみ stderr を表示します。 - 重要(stdin):
codex execは常に stdin を読み取り、位置引数のプロンプトと連結します – プロンプトが位置引数として完全に指定されている場合でも同様です。stdin が閉じられていない場合、codex は永久にブロックします。ハーネス(バックグラウンドタスク、フック、stdin が TTY ではないが閉じられてもいないスクリプト)から呼び出す場合は、明示的に stdin をリダイレクトします:コマンドに</dev/nullを追加します。例:codex exec ... "prompt" </dev/null 2>/dev/null。これを誤ると、stdout がゼロバイト、CPU 使用量ゼロ、プロセスが永久にハングしたように見えます。 - コマンドを実行し、stdout/stderr をキャプチャ(適宜フィルタリング)し、結果をユーザーに要約します。
- Codex 完了後、ユーザーに次のように伝えます:「この Codex セッションは、いつでも「codex resume」と言うか、追加の分析や変更を依頼することで再開できます。」
クイックリファレンス
| ユースケース | サンドボックスモード | 主要フラグ |
|---|---|---|
| 読み取り専用のレビューまたは分析 | read-only | --sandbox read-only 2>/dev/null |
| ローカル編集の適用 | workspace-write | --sandbox workspace-write --full-auto 2>/dev/null |
| ネットワークまたは広範なアクセスを許可 | danger-full-access | --sandbox danger-full-access --full-auto 2>/dev/null |
| 最近のセッションを再開 | 元の設定を継承 | echo "prompt" | codex exec --skip-git-repo-check resume --last 2>/dev/null(フラグ不可) |
| 別のディレクトリから実行 | タスクに合わせる | -C <DIR> とその他のフラグ 2>/dev/null |
実行タイムアウト
Codex は中間出力を生成しません – 完了時にのみ結果を書き込みます。処理が完了前に強制終了された場合、出力ファイルは静かに空になります(エラーなし)。
推奨アプローチ: 同期的に実行 – タイムアウトのリスクが完全になくなり、会話も結果を待つことになります。
バックグラウンドで実行する場合、推論努力レベルに基づいて実行タイムアウトを設定します:
| 推論努力レベル | タイムアウト |
|---|---|
low | 150秒 |
medium | 300秒 |
high | 600秒 |
xhigh | 1200秒 |
max | 1800秒 |
ultra | 1800秒 |
フォローアップ
- すべての
codexコマンドの後、すぐにAskUserQuestionを使用して次のステップを確認し、明確化を収集するか、codex exec resume --lastで再開するか判断します。 - 再開する場合、新しいプロンプトを stdin 経由でパイプします:
echo "new prompt" | codex exec resume --last 2>/dev/null。再開されたセッションは、元のセッションと同じモデル、推論努力レベル、サンドボックスモードを自動的に使用します。 - フォローアップアクションを提案する際は、選択したモデル、推論努力レベル、サンドボックスモードを再度明示します。
Codex 出力の批判的評価
Codex は OpenAI モデルをベースにしており、独自の知識カットオフと制限があります。Codex を権威ではなく同僚として扱ってください。
ガイドライン
- 自身の知識に自信があればそれを信頼してください。Codex が誤っていると確信できることを主張した場合、直接反論します。
- 意見の相違は WebSearch やドキュメントを使って調査し、Codex の主張を受け入れる前に確認します。必要に応じて、調査結果を Codex に再開経由で共有します。
- 知識カットオフを覚えておく – Codex は、そのトレーニングデータ以降の最近のリリース、API、変更について知らない可能性があります。
- 盲目的に従わない – Codex は誤っている可能性があります。その提案を批判的に評価し、特に以下に注意します:
- モデル名と機能
- 最近のライブラリバージョンや API の変更
- 進化した可能性のあるベストプラクティス
Codex が誤っている場合
- ユーザーに明確に意見の相違を述べます
- 証拠を提供します(自身の知識、ウェブ検索、ドキュメント)
- オプションで Codex セッションを再開して意見の相違を議論します。自身を Claude と特定して、Codex が AI 同士の議論であると認識できるようにします。ハードコードされた名前ではなく、実際のモデル名(現在実行中のモデルなど)を使用します:
echo "こちらはClaude(<現在のモデル名>)からのフォローアップです。[X]については[エビデンス]の理由で同意できません。どう思いますか?" | codex exec --skip-git-repo-check resume --last 2>/dev/null - 意見の相違を修正ではなく議論として捉えます – どちらの AI も誤っている可能性があります
- 真に曖昧な場合は、ユーザーが進め方を決定できるようにします
エラーハンドリング
codex --versionまたはcodex execコマンドがゼロ以外で終了した場合は、失敗を報告して停止し、再試行の前に指示を求めます。- 影響の大きいフラグ(
--full-auto、--sandbox danger-full-access、--skip-git-repo-check)を使用する前に、AskUserQuestionを使用してユーザーの許可を求めます(すでに許可が得られている場合を除く)。 - 出力に警告や部分的な結果が含まれている場合は、それらを要約し、
AskUserQuestionを使用して調整方法を尋ねます。