HOME/ブログ/自然言語でGitHub Actionsを動かす「GitHub Agentic Workflows」を調べてみた📖
github-agentic-workflows-thumbnail
技術解説・Tips

自然言語でGitHub Actionsを動かす「GitHub Agentic Workflows」を調べてみた📖

avatar
Yuki Ueno

Markdownに自然言語で「やってほしいこと」を書くだけで、AIエージェントがGitHub Actions上で動いてくれる——そんなGitHub公式のCLI拡張機能「GitHub Agentic Workflows」について調べた内容をまとめました。


背景・課題

Issueのトリアージやドキュメントの同期、CI失敗時の原因調査など、開発現場には地道だけれど手が抜けない運用作業がたくさんあります。これらをGitHub Actionsで自動化しようとすると、条件分岐や判断ロジックをすべてYAMLで書き下す必要があり、どうしても記述量がかさみがちです。

「AIエージェントに任せられる部分は、もっと少ない記述で自動化できないか」という観点で調査したところ見つかったのが、GitHub公式の「GitHub Agentic Workflows」でした。

GitHub Agentic Workflowsとは

GitHub Agentic Workflowsは、GitHubが提供するCLI拡張機能gh awです。Markdownファイルに自然言語で自動化したい内容を書くと、それをGitHub Actionsのワークフローに変換して実行してくれます。2026年2月13日にTechnical Preview(技術プレビュー)として発表されたばかりの、まだ新しい機能です。

対応するAIエンジンはGitHub Copilot・Claude(Anthropic)・Codex(OpenAI)・Geminiの4つで、後述するフロントマターで選択できます。なお、エンジンの先にある個別モデル(世代やバージョン)まで指定できるかどうかは、今回の調査では確認できませんでした。

ワークフローファイルの構成

ワークフローは1つのMarkdownファイルで完結します。ファイルの前半はYAML形式のフロントマターで、主に以下を定義します。

設定項目内容
トリガーいつ動かすか(スケジュール、Issue作成時など)
permissionsAIエージェントに与える権限
toolsAIが使えるツール(Web検索、ページ取得など)
engine使用するAIエンジン
safe-outputs書き込み・実行を許可する操作

後半は自然言語で「何をしてほしいか」を書く部分で、ここが実質的にAIへのプロンプトになります。

権限まわりの設計思想

セキュリティ設計として、AIエージェント自体はリポジトリの内容に対して読み取り専用の権限しか持ちません。書き込みや実行が必要な操作は、safe-outputsで明示的に宣言したアクション(Issue作成、コメント投稿など)だけがおこなえる仕組みになっています。用意されているアクションの種類は多く、公式ドキュメントを調べた時点では40種類以上あるとのことでした(バージョンによって増減する可能性があるため、利用時に最新のドキュメントを確認するのがおすすめです)。

実行フローはおおまかに次の3段階です。

  1. AIエージェント(読み取り専用):リポジトリの情報を分析し、「やりたいこと」をJSON形式で出力する
  2. 検証ジョブ:プロンプトインジェクションや認証情報の漏洩、悪意あるコードが含まれていないかを自動スキャンする(脅威検知)
  3. Safe Outputsジョブ:検証を通過した内容だけが、Issue作成やコメント投稿などの形で実際にGitHubへ反映される

書き込み権限を持つのは3番目のジョブだけ、という構成です。エージェント自体には強い権限を持たせずに自動化できる点は、安全に運用するうえで重要な設計だと感じました。

なお、AIがリポジトリの情報を読み取る部分はGitHub MCP Server経由で提供されており、独自のMCPサーバーを追加で組み込むこともできるようです。社内では「認証不要のMCPサーバーなら組み込みやすそう」という話も出ました。

使い方

実際の利用の流れはシンプルです。

1. GitHub CLIに拡張機能をインストールする

Bash
gh extension install github/gh-aw

2. ワークフロー用のMarkdownファイルを作成する

.github/workflows/配下に、フロントマターと自然言語の指示文を書いたMarkdownファイルを用意します。

3. コンパイルする

Bash
gh aw compile

このコマンドを実行すると、Markdownの内容をもとに.lock.ymlという通常のGitHub Actionsワークフローファイルが自動生成されます。あとはMarkdownファイルと.lock.ymlファイルを一緒にコミット・プッシュすれば、通常のGitHub Actionsと同じようにイベントやスケジュールに応じて動き出します。

実際の活用イメージ

GitHub公式のサンプル集では、Pull Requestの管理・ドキュメントの同期・コード品質改善・メトリクス分析・テストの強化・複数リポジトリ連携など、幅広いカテゴリのワークフロー例が公開されています。

社内で議論する中で挙がったアイデアの一例です。

  • CI失敗時の原因調査:CI/CDが失敗した際に、AIがログを自動解析して原因をPull Requestにコメントする
  • リポジトリ情報の自動同期:Issueやコードの最新状況をもとに、READMEなどのドキュメント記載を自動更新する
  • Discussionsとの連携:パーミッション設定にDiscussionsも含められるため、Discussions上でのAIとの対話や、議論内容のIssue化なども将来的にできる可能性があります(※実際に構成できるかは要検証です)

いずれもYAMLをゼロから書くよりも、自然言語で「やりたいこと」を記述するだけで済む分、着手のハードルは低そうです。

まとめ

調査してみて感じたポイントは大きく2つです。

ポイント内容
記述量の削減複雑な判断ロジックをYAMLで書き下す必要がなく、自然言語の指示だけでGitHub Actionsを動かせる
活用の幅の広さIssue/PR管理からドキュメント同期、テスト強化まで、既存のGitHub Actionsが担っていた運用作業の多くを代替できるポテンシャルがある

2026年2月にTechnical Previewとして公開されたばかりの機能のため、今後仕様が変わる可能性があります。社内でも継続して情報をキャッチアップしながら、活用できそうな業務から少しずつ試していきたいと考えています。

気になった方は、公式ドキュメントやサンプルリポジトリも公開されているので、ぜひ触ってみてください。