LESSON 04 / 自動化
codex exec でCI・スクリプト
ここまでは画面を見ながらの「対話モード」でした。でも、人が見ていない場所——スクリプトや CI(=コミットのたびに自動でテスト等を回すしくみ)——でCodexを動かしたいこともあります。そのための一発実行が codex exec です。
ひとことで言うとcodex(対話)に対して、codex exec(一回きり・画面を開かない)。頼みごとを渡すと、黙々とこなして結果を返してくれます。
基本のかたち
codex exec "テストを実行して、失敗があれば直して"
短縮形は codex e。対話画面(TUI)は開かず、一回きりで走って終わります。
結果を機械で扱う
スクリプトから使うなら、結果を「あとで処理しやすい形」で受け取れると便利です。
--json… 実行中のできごとを JSONL(1行1件のJSON)で出す-o result.txt… 最後の返答をファイルに書き出す--output-schema schema.json… 出力を決まった形(JSONスキーマ)に沿わせる--skip-git-repo-check… gitの管理外フォルダでも実行を許す
codex exec --json "package.json の依存を確認して" > events.jsonl
CIでの安全な組み合わせ
自動で走らせるときは、止まって確認できる人がいません。だから承認は never(聞かない)にしつつ、サンドボックスで触れる範囲をしっかり絞るのがコツ。レッスン02の「併せ技」がここで効いてきます。
codex exec -a never -s workspace-write "lint を直してコミット用に要約して"
モコのメモ「止まらない」=自動化向き、でもあります。だからこそ、箱(サンドボックス)を先に決めてから走らせると安心です。認証を渡したいときは環境変数 CODEX_API_KEY も使えます。