-- Views
April 18, 26
スライド概要
[Global Azure 2026 @ Tokyo - connpass](https://jazug.connpass.com/event/386399/) の登壇スライドです。
マルチエージェントワークフローの一部にGitHub Copilot Agentを取り込む話と、新しい技術をGitHub Copilotで開発する流れ、Durable Agentsについてまとめています
バックエンドエンジニア。 主にC#, Azure, Terraform, GitHub Actionsをいじっています。Microsoft MVP for Azure, Azure AI Foundry, GitHub Star
Microsoft Agent Framework で GitHub Copilot を Agent として利用したアプリ を開発する - マルチエージェントワークフローにGitHub CopilotをAgentとして組み込む Global Azure Tokyo 2026/4/18 Maki Nagase
Maki Nagase @yuma_prog • My Info • 株式会社ゼンアーキテクツ所属 • GitHub Star • Microsoft MVP for Azure, Microsoft Foundry • 運営・主催コミュニティ • JAZUG(Japan Azure User Group), AI駆動開発勉強会, Azure わいがや会, GitHub Vibe Riders, Hack Everything., GitHub dockyard, AOAI Dev Day • 好きな技術 • Azure PaaS, Azure AI, C#, Terraform, GitHub Copilot • 趣味 • 技術コミュニティ,アニメ,キャンプ,しゃぼん玉,法螺貝, サバゲ,などなど
Microsoft Agent Framework
Microsoft Agent Framework Microsoftが開発しているオープンソースフレームワーク • Microsoft Researchの AutoGen とエンタープライズ向けのSemantic Kernelを統合したもの Azure以外のクラウド、コンテナ、オンプレでも動く Azure OpenAI, FoundryだけでなくOpenAIやAnthropicのモデルも使える OpenTelemetry, Entra ID, Responsible AIなどのエンタープライズ向け機能
Microsoft Agent Framework https://ignite.microsoft.com/en-US/sessions/BRK197
Agent Frameworkの中核 Agent - モデル中心・自律的に判断 • ToolだけでなくAgent Skillsなどにも対応 • 各種モデルProvider に対応 https://learn.microsoft.com/en-us/agent-framework Workflow - 明示的な実行順序・合流・分岐 • 複数Agentのオーケスト レーションを抽象化したも の • 一般的なオーケストレー ションと、AutoGen由来の Magenticに対応
Agent Frameworkの中核 Agent - モデル中心・自律的に判断 • ToolだけでなくAgent Skillsなどにも対応 • 各種モデルProvider に対応 ProvidersにGitHub Copilot! https://learn.microsoft.com/en-us/agent-framework Workflow - 明示的な実行順序・合流・分岐 • 複数Agentのオーケスト レーションを抽象化したも の • 一般的なオーケストレー ションと、AutoGen由来の Magenticに対応
GitHub Copilot Agent • Agent Framework から見ると GitHub Copilot も 1つの provider • 標準の AIAgent として扱える • CopilotClient を生成 → .AsAIAgent() で agent 化 • 前提 • Copilot CLI のインストールと認証 • ファイル編集権限を持つならコンテナ環境が推奨 • GitHub Copilot SDK をバックエンドとする エージェントを作成できる https://learn.microsoft.com/en-us/agent-framework/agents/providers/github-copilot?pivots=programming-language-csharp
Providerごとの制約 • Copilot Agent は Functions Tools と MCP Tools が利用可能 https://learn.microsoft.com/en-us/agent-framework/agents/providers/github-copilot?pivots=programming-language-csharp
GitHub Copilot SDK • 独自アプリから GitHub Copilot CLI のエージェントワークフローを利用できるSDK • GitHub Copilot CLI SDKを正式名称にしてほしかった…通称「Copilot SDK」は誤解を招きすぎる… • 利用方法はRepoにまとまっている(簡単に動かせる) • https://github.com/github/copilot-sdk/tree/main • 対応言語は Node.js/TypeScript, Python, Go, .NET, Java (これ以外の言語はコミュニティレ ベルで存在 https://github.com/copilot-community-sdk ) • 利用の前提条件 • GitHub Copilot Subscription (制限はあるが無料枠でも動く) • GitHub Copilot CLIがインストールされていること GitHub Copilot CLI のフロントエンドを開発するイメージ あくまで裏で Copilot CLI が動いているので、実行者のプレミアムリクエストが消費される
GitHub Copilot SDKのメリット 自分でCoding Agentを実装してみようと思ったときに必要な機能を考えてみると… ターン間のコンテキスト管理 ツールとコマンドの制御 モデル間のルーティング MCPサーバーの統合 権限管理 etc… Build an agent into any app with the GitHub Copilot SDK - The GitHub Blog
GitHub Copilot SDKのメリット 自分でCoding Agentを実装してみようと思ったときに必要な機能を考えてみると… ターン間のコンテキスト管理 ツールとコマンドの制御 モデル間のルーティング MCPサーバーの統合 権限管理 etc… 心が折れる… Build an agent into any app with the GitHub Copilot SDK - The GitHub Blog
GitHub Copilot SDKのメリット 自分でCoding Agentを実装してみようと思ったときに必要な機能を考えてみると… ターン間のコンテキスト管理 ツールとコマンドの制御 モデル間のルーティング MCPサーバーの統合 権限管理 etc… これらの機能がすでに実装されている Copilot CLI を土台として アプリを構築できる! Build an agent into any app with the GitHub Copilot SDK - The GitHub Blog
GitHub Copilot SDK を 一つの Agent として扱い アプリを構築できるのが Agent Framework の GitHub Copilot Provider
実装編
新しい技術での開発 — 全体像 1 4 repo内Instructionsを確認 .github/copilot-instructions.md や AGENTS.md の有無を確認 仕様ドキュメント化 .mdファイルに落とす or 仕様書を生成させる 2 5 Awesome Copilot活用 既存のinstructions/prompts /agents/skillsから探す AutoPilotで実装 Copilot CLI /fleet + Rubber Duckでレビュー 3 6 Spec DrivenでPlan Instructionsを置いて Plan Modeで仕様を相談 レビュー力を磨く 公式docs / README / samplesを並行で読む 思想:「Copilotに未知のframeworkを理解させる」 → 「理解を助けるcontextを先に用意する」
Step 1:repo内のInstructionsを確認 STEP 1 repoルートのCopilot向け指示書を見る ✓ ✓ ✓ ✓ .github/copilot-instructions.md の有無を確認 AGENTS.md やSkillsなどもチェック あれば最初に読んで前提知識を獲得する 実装時に使えそうなものは、Copilot によるカスタマイズ作成時に考慮させるようにする 目的 公式が用意した context資産を 見逃さない 実例:microsoft/agent-framework 自身が repoルートに Copilot instructions を配置している github.com/microsoft/agent-framework/blob/main/.github/copilot-instructions.md
Step 2:Awesome Copilotを活用 STEP 2 既存の資産を探す or 叩き台を作る ✓ Awesome Copilot リポジトリ または MCP Server で検索 ✓ instructions / prompts / agents / skills を探す ✓ /create-instruction (VS Code の Copilot Chat)などで叩き台を作ってもOK 目的 ゼロから書かず 既存の資産を 使い回す Tips:独自ツール github-copilot-consultant で検索〜カスタマイズ作成まで一気通貫 github.com/yuma-722/github-copilot-consultant
Step 3-4:Spec Driven で仕様を固める STEP 3 STEP + 4 STEP 3 Plan Agentで仕様を相談 ▸ Spec Drivenワークフローで動くよう Instructionsを先に置く ▸ Plan Modeで要件・設計・分割を対話で詰める 目的 いきなり書かずに 仕様を会話で詰めて ドキュメントに残す STEP 4 仕様をドキュメントに落とす ▸ .mdファイル に書く or 対話ログから仕様書を生成させる ▸ 納得いくまで人間がレビュー・修正
Step 5:AutoPilot × Rubber Duck STEP 5 Copilot CLI の AutoPilot に丸投げ $ /fleet 実装して。設計や小さな単位での 実装のたびに Rubber Duck でレビューして 目的 自動実装 + 自動セルフレビュー のループを作る Rubber Duck ▸ /experimental ONで利用可能(Copilot CLI) ▸ Claudeファミリーで複雑なタスクを実行すると、GPT-5.4が自動でレビュー
Step 6:人間はレビュワーになる STEP 6 目的 実装待ちの時間で レビュー可能な 人間になっておく AIが実装している間、並行で公式情報を読む AIが動いている時間はレビュー準備の時間。生成物を判断できる状態を作る。 公式 Docs 設計思想・ API仕様を掴む README 前提・制約・ QuickStartを確認 samples 実際の使い方を 動くコードから学ぶ
まとめ:開発の「前提」が変わった BEFORE AFTER 未知のframeworkを Copilotに理解させる 理解を助けるcontextを 先に用意する ハルシネーションが起きる前提で AIの出力を逐一人間が補正 Instructions / Spec / 仕様書を整えて AIに任せられる範囲を最大化 開発者の仕事 = contextを用意し、AIの出力をレビューする
つくったもの • PRのリンクを渡すと先生と生徒の会話風音声で内容を教えてくれる
つくったもの • Agent FrameworkでGitHub Copilot Agentを使う利点は、GitHub Copilot以外のプロバイ ダーのAgentと組み合わせたワークフロー構築ができるところ
デモ
今回使ったワークフロー構築手法
Durable Functions Azure Functions Durable Functions サーバー管理不要な実行環境(FaaS) Azure Functionsを補う拡張機能 • イベントをトリガーに起動 • 途中経過や状態を保持しながら、複数の • 時間・HTTPリクエスト・ファイルアッ プロードなど • ゼロスケール可能で、実行中のみ課金 処理を順番や条件付きで実行する(ス テートフル) • ステートフルなワークフローをサーバレ スで実装できる • 失敗時に自動リトライしてくれる
サーバーレスでステートフルなワークフロー 構築ができるDurable Functionsと Agent Frameworkはいい感じに統合されている
Durable Agents (Durable task extension for Microsoft Agent Framework) • Agent Frameworkを使って非常に簡単にエージェントワークフローを構築可能 • Durable Task SchedulerというDurble Functionsのマネージドなバックエンドにより、 Chat Historyやセッション管理をほぼ意識しなくていい • Azure Functions・Durable Functions のもともとの強みを生かせる • ステートフルなワークフロー • 処理の途中からリトライ • ゼロスケール • などなど
Agent Frameworkでのエージェント 実装
Durable Agents (Durable task extension for Microsoft Agent Framework) • Agent Frameworkで作成したAgentを「AgentFunctionApp」に登録するだけで、 Durable Task Scheduler側で履歴やセッションを管理されたエージェントになる
Durable Agents (Durable task extension for Microsoft Agent Framework) • Durable Task Scheduler のダッシュボードから、マルチエージェントワークフローの 履歴やシーケンス図などを確認可能
Durable Agents (Durable task extension for Microsoft Agent Framework) • Durable Functions に元々あった機能の拡張で、Human in the loopの実装も容易 • AIエージェント以前からある成熟した技術なので安定! • call_activityで承認を得るための通知を行い、wait_for_external_eventで承認イベント が発生するまで待つ
宣伝
Microsoft Build 2026 登壇します! サンフランシスコで お待ちしています!
4月24日 AI Dev Day in Fukuoka https://azureai.connpass.com/event/382334/
5月16日 Azure Travelers 勉強会 金沢の旅 https://jat.connpass.com/event/382095/
5/26 Agent Frameworkによる マルチエージェント実装体験ハンズオン https://hack-everything.connpass.com/event/389635/
6/19(金) 第 11 回 JAZUG for Women https://jazug.connpass.com/event/390193/