Skip to main content

GitHub Actionsでエージェント ワークフローを開発する

GitHub エージェント型ワークフローを使用して、Markdown 命令をサードパーティのコーディング エージェントを利用した自動化に変換します。

メモ

GitHub エージェント型ワークフロー は パブリック プレビュー であり、変更される可能性があります。

Introduction

GitHub エージェント型ワークフロー では、Markdown でリポジトリの自動化を定義し、それらを実行する AI コーディング エージェントを選択できます。 gh aw拡張機能は、各エージェント ワークフローをGitHub Actions ワークフローにコンパイルします。

ワークフローのライフサイクル全体 (作成、デバッグ、最適化) 自体はエージェント的です。 自然言語で必要なものを記述し、コーディング エージェントがワークフローを作成、調整、およびトラブルシューティングします。

このチュートリアルでは、コーディング エージェントを使用して、変更が適切にテストされているかどうかを確認する自動プル要求レビュー担当者を作成します。

前提条件

開始する前に、以下の項目があることを確認します:

  • GitHub Actionsが有効で、書き込みアクセス権があるリポジトリ
  • GitHub CLI バージョン 2.0.0 以降がインストールされ、認証されました
  • サポートされているコーディング エージェント ( Claude Code、 OpenAI Codex、または Google Gemini CLI、 Copilot CLI (コパイロット CLI)など) とその必要な資格情報へのアクセス

GitHub CLIを認証するには、次を実行します。

gh auth login --scopes repo,workflow

gh aw拡張機能のインストール

GitHub エージェント型ワークフローのGitHub CLI拡張機能をインストールします。

gh extension install github/gh-aw

エージェントの選択と認証の構成

ワークフローに最適なエージェント CLI を選択します。 Claude Code、 OpenAI Codex、または Google Gemini CLIを選択すると、 Copilot CLI (コパイロット CLI) はすべて GitHub エージェント型ワークフロー実行できます。

この記事では、エージェントの資格情報をリポジトリ シークレットとして追加する簡単なセットアップについて説明します。 Claude Code、 OpenAI Codex、または Google Gemini CLIを使用する場合は、エージェントの API キーをリポジトリ シークレットとして格納します。

| エージェント CLI | engine 値 | リポジトリ シークレット | | --- | --- | --- | | クロード符号 | claude | ANTHROPIC_API_KEYAnthropic API キーを含む | | OpenAI Codex | codex | OPENAI_API_KEY OpenAI API キーを含む | | Google Gemini CLI | gemini | GEMINI_API_KEY Google AI Studio API キーを含む | | Copilot CLI (コパイロット CLI) (既定値) | copilot | 組織リポジトリにシークレットは必要ありません (下記参照)。 個人用リポジトリの場合、Copilot要求が読み取りに設定されたきめ細かいpersonal access tokenを含む**COPILOT_GITHUB_TOKEN**。 |

Pi (試験段階) などの他のエンジンもサポートされています。 完全な一覧については、 GitHub エージェント型ワークフロー 認証リファレンスを参照してください

組織の請求 GitHub Copilot

組織所有のリポジトリでGitHub Copilotを使用する場合は、GitHub Actionsではなく、personal access tokenの組み込みGITHUB_TOKENを使用できます。 ワークフロー のフロントマッター permissionscopilot-requests: writeを追加します。個別のシークレットは必要ありません。 セットアップ手順については、 AUTOTITLE を参照してください。

GitHub UI にシークレットを格納する

Claude Code、 OpenAI Codex、または Google Gemini CLI用のシークレットを追加するか、個人用リポジトリをGitHub Copilotするには:

  1. GitHubで、リポジトリに移動します。
  2. リポジトリ名の下にある [ 設定] をクリックします。
  3. サイドバーで、[ シークレットと変数] をクリックし、[ アクション] をクリックします。
  4. [新しいリポジトリ シークレット] をクリックします。
  5. [ 名前 ] フィールドに、上記の表のシークレット名を入力します。
  6. [ シークレット ] フィールドに値を入力します。
  7. [シークレットの追加] をクリックします。

ワークフローの作成

コーディング エージェントを使用して、自然言語の説明からワークフローを作成します。

  1. リポジトリ ルートから、エージェント作成用にリポジトリを初期化します。 これにより、コーディング エージェントがワークフローを作成および編集するのに役立つスキルと手順が追加されます。

    gh aw init
    
  2. Claude Code、 OpenAI Codex、または Google Gemini CLI、Copilot CLI (コパイロット CLI)、VS Code エージェント モードなどを使用して、リポジトリのコンテキストでコーディング エージェント セッションを開始します。

  3. agentic-workflows スキルを使用し、必要なワークフローを記述します。

    Copilot prompt
    /agentic-workflows create a pr reviewer that ensure the changes are tested.
    

    エージェントは、 .github/workflows/にワークフロー Markdown ファイルを作成し、対応する .lock.ymlGitHub Actions ワークフロー ファイルをコンパイルし、両方のファイルを確認してコミットするように求めます。

  4. 生成されたワークフローを確認し、エージェントにファイルのコミットとプッシュを依頼します。

ヒント

同じエージェントアプローチを使用して、ワークフローの実行後にワークフローを更新および改善できます。 エージェントにレビュー条件の調整、チェックの追加、失敗した実行のデバッグを依頼します。すべて自然言語で行います。 ワークフローのフロントマッターを後で編集する場合は、変更をコミットする前に gh aw compile を実行します。

ワークフローの実行

生成されたワークフローはプル要求で自動的にトリガーされるため、次にリポジトリで pull request を開くか更新するときに実行されます。

  1. リポジトリで pull request を開きます。
  2. GitHubで、リポジトリに移動し、[アクション] タブをクリックします。
  3. 左側のサイドバーで、エージェントが作成したワークフローを選択します。
  4. 実行が完了すると、ワークフローは、変更に十分なテストが含まれているかどうかを示すプル要求レビューを残します。

次のステップ