CodexをGitHub Actionsで自動化する方法|codex-action設定
先に結論: 公式アクション
openai/codex-action@v1をワークフローに追加し、openai-api-keyにAPIキーのシークレット、promptに指示文を渡せば、GitHub Actions上でCodexを自動実行できます。内部ではcodex execが動き、結果はfinal-message出力で後続ステップへ渡せます。
「PRが来たら自動でレビューさせたい」「毎晩リポジトリを点検させたい」という定型作業は、GitHub ActionsとCodexの組み合わせで自動化できます。
この記事では、OpenAI公式のGitHub Actionであるopenai/codex-actionの設定方法と、PRレビューbotの実例、安全に運用するためのsafety-strategyの考え方を2026年8月時点の情報で解説します。
この記事の要点
- OpenAI公式の
openai/codex-action@v1を使うと、GitHub Actionsのワークフロー内でCodexを実行できます(2026年8月時点)。- 認証は
openai-api-key入力にリポジトリシークレット(例:secrets.OPENAI_API_KEY)を渡すのが基本です。- 指示は
promptまたはprompt-fileで渡し、実行結果はfinal-message出力で後続ステップから参照できます。safety-strategyの既定値はdrop-sudoで、sudo権限を落としてからCodexを実行します。- アクションの内部では非対話モードの
codex execが動いています。
前提・動作環境
この記事は、GitHub Actionsの基本(ワークフローYAML・シークレットの登録)を知っている方向けです。
Codex自体の概要と始め方は「Codexの使い方完全ガイド」で解説しています。
CI上のCodexはChatGPTアカウントではなくAPIキーで認証するため、OpenAIのAPIキー(従量課金)が必要です。取得方法と料金の目安は「CodexをAPIキーで使う方法」を参照してください。
codex-actionの仕組み
openai/codex-actionは、ランナーにCodex CLIをインストールし、非対話モードのcodex execで指示を1回実行して結果を返す公式アクションです。
対話しながら使うローカルのCodexと違い、1回のプロンプトで完結するタスクを自動実行するのがCIでの使い方です。APIリクエストはアクションが用意するプロキシ経由で安全に送られます。
codex execそのものの使い方は「Codex CLIの使い方」で解説しています。
最小構成のワークフロー
まず、リポジトリのシークレットにOPENAI_API_KEYを登録してから、次のワークフローを作成します。
name: Run Codex
on: [push]
jobs:
codex:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v5
- name: Run Codex
uses: openai/codex-action@v1
with:
openai-api-key: ${{ secrets.OPENAI_API_KEY }}
prompt: "Review this code for issues."
主な入力は次のとおりです。
openai-api-key: APIキーのシークレット。キーをYAMLへ直書きするのは厳禁で、必ずsecrets経由で渡します。prompt/prompt-file: Codexへの指示。長い指示はファイルに切り出してprompt-fileで渡すと管理しやすくなります。codex-args: Codex CLIへ追加フラグを渡したいときに使います。output-file: 結果をファイルへ保存したい場合に指定します。
実行結果は${{ steps.<step-id>.outputs.final-message }}で参照でき、PRコメントの投稿やSlack通知など後続ステップの材料にできます。
実例: PRレビューbotを作る
公式リポジトリでも紹介されている代表的な使い方が、Pull Requestをトリガーにした自動レビューです。
pull_requestイベントでワークフローを起動するactions/checkoutでPRのマージコミットを取得し、baseとheadのrefをfetchするcodex-actionにレビュー観点のプロンプトを渡して実行するfinal-message出力を、PRコメントとして投稿するステップに渡す
なお、CodexのPRレビューにはGitHubアプリ連携で@codex reviewと呼びかける方法もあります。設定だけで済ませたいならGitHubアプリ連携、観点や出力形式を自由に設計したいならcodex-actionという使い分けです。
アプリ連携の手順は「CodexにPRレビューを任せる方法」で解説しています。
safety-strategyで権限を絞る
CI上でAIエージェントを動かす以上、権限の絞り込みは重要です。codex-actionはsafety-strategy入力で実行時の権限戦略を選べます。
read-only: ファイル変更を許さない読み取り専用。レビュー用途ならこれで十分です。drop-sudo(既定): 実行前にsudo権限を落とします。Linux・macOSランナーの標準的な選択肢です。unprivileged-user: 低権限ユーザーでCodexを実行します。unsafe: 権限制限なし。Windowsランナーではunsafeの指定が必要ですが、実行内容への信頼が前提になります。
ローカルのサンドボックスと承認モードの考え方は「Codexのサンドボックスと承認モード」と地続きなので、あわせて読むと理解しやすいです。
つまずきポイント
codex-actionの認証はAPIキーなので、ChatGPTプランの枠ではなく従量課金になります。トリガーを絞って実行回数を抑え、OpenAIダッシュボードで使用量に上限を設定しておくと安心ですよ。
- 想定外のAPI課金: 実行のたびにAPI料金がかかります。
on:のトリガーをpull_requestなど必要な場面に絞り、使用量の上限設定も検討しましょう。 - プロンプトが長すぎて管理できない: YAML内の
promptが肥大化したらprompt-fileへ切り出すのが定石です。 - リポジトリの前提を毎回説明している: リポジトリにAGENTS.mdを置けばCIでも読み込まれます。書き方は「AGENTS.mdの書き方」を参照してください。
- レビュー結果を鵜呑みにする: 自動レビューはあくまで一次チェックです。マージ判断は人間が行いましょう。
よくある質問
ChatGPTアカウントのサインインでCI実行できますか?
CIでは対話的なサインインができないため、APIキー認証が基本です。openai-api-keyにシークレットを渡してください。
料金体系は「CodexをAPIキーで使う方法」で解説しています。
どんなタスクの自動化に向いていますか?
PRの自動レビュー、Issueへの一次回答案の作成、ドキュメントとコードの不整合チェックなど、「1回のプロンプトで完結し、結果をテキストで返せる」タスクに向いています。
大規模な機能実装のような長時間タスクは、ローカルやクラウドのCodexで対話しながら進める方が確実です。
Claude Codeでも同じことができますか?
できます。Claude Codeにも公式のGitHub Actions連携があり、考え方はほぼ同じです。同じ仕組みをClaude Codeで組む場合は「Claude CodeをGitHub Actionsで動かす方法」を参照してください。
ハブネコのひとこと
最初から凝ったbotを作ろうとせず、まずはread-onlyのレビュー用途で1本動かしてみるのがおすすめです。挙動と課金のペースをつかんでから、書き込みを伴う自動化へ広げると失敗がありません。
まとめ
openai/codex-action@v1を使えば、APIキーのシークレットとpromptを渡すだけでGitHub Actions上のCodex自動実行を始められます。
内部ではcodex execが動いており、結果はfinal-message出力で後続ステップへ渡せます。権限はsafety-strategyで絞り、レビュー用途ならread-onlyから始めるのが安全です。
Codex全体の使い方は「Codexの使い方完全ガイド」、GitHubアプリでのPRレビュー連携は「CodexにPRレビューを任せる方法」もあわせてご覧ください。
ChatGPT Plusに入っているから追加費用ゼロだと思ってワークフローを回したら、APIの請求が発生していました…。