Copilot Chatを動かすAIエンジンが、自作アプリに組み込めるようになりました。
GitHub Copilot SDKが2026年4月にパブリックプレビューとして公開されました。Python・TypeScript・Go・.NET・Javaの5言語に対応しており、Copilot CLIのエージェントランタイムをアプリケーションから直接呼び出せます。
この記事でわかること:
- GitHub Copilot SDKの概要と何ができるか
- 対応言語ごとのインストール方法とサンプルコード
- カスタムエージェント・MCP連携・BYOKなど主要機能
- 料金とサブスクリプション要件
GitHub Copilot SDKとは
https://github.com/github/copilot-sdk
GitHub Copilot SDKは、Copilot CLIのエージェントランタイムをライブラリとして提供するツールです。Copilot Chatがファイル編集・Gitコマンド・Web検索などを自律的にこなす仕組みを、そのままアプリケーションに組み込めます。
これまでCopilot ChatはVS CodeやGitHub.comのUI上でしか動かせませんでした。このSDKにより、独自のモバイルアプリ・CLIツール・Webサービスに同じエンジンを埋め込めます。GitHubの公式発表で紹介されたデモでは、React NativeアプリにSDKを組み込み、GitHubのissueをAIで自動要約する機能を実装しています。
自前のオーケストレーションが不要になる
AIエージェントを一から実装しようとすると、プロンプト管理・ツール呼び出し・リトライ処理・ストリーミングの制御など多くの処理が必要です。Copilot SDKはこれらを「production-testedなランタイム」として提供します。エージェントの振る舞いだけを定義すれば、計画・ツール実行・ファイル編集はCopilot CLIが担います。
対応言語とインストール
5言語をカバーしており、インストールはいずれも1コマンドです。
| 言語 | インストール |
|---|---|
| Node.js / TypeScript | npm install @github/copilot-sdk |
| Python | pip install github-copilot-sdk |
| Go | go get github.com/github/copilot-sdk/go |
| .NET | dotnet add package GitHub.Copilot.SDK |
| Java | Maven: com.github:copilot-sdk-java |
Node.js・Python・.NETはCopilot CLIが自動的にバンドルされるため、別途CLIをインストールする必要はありません。GoのみCLIの手動インストールが必要です。
最小限のコードはこれだけです(TypeScript)。
import { CopilotClient } from "@github/copilot-sdk";
const client = new CopilotClient();
const session = await client.createSession({ model: "gpt-4.1" });
const response = await session.sendAndWait({ prompt: "What is 2 + 2?" });
console.log(response?.data.content);
await client.stop();
主な機能
カスタムエージェントとスキル
デフォルトのCopilotエージェントだけでなく、独自のエージェントを定義できます。skills: string[]を設定すると、エージェント起動時に特定のスキルを自動的に注入できます。複数のサブエージェントを使い分けるオーケストレーターパターンもdefaultAgent.excludedToolsで実現できます。サブエージェントのストリーミングイベントも個別に受け取れるため、UIへのリアルタイム表示も扱いやすくなっています。
MCP(Model Context Protocol)対応
MCPサーバーとの連携をサポートしています。v0.3.0ではconvertMcpCallToolResult()ユーティリティが追加されました。MCPツールサーバーの出力をSDKのToolResultObjectに変換できるため、既存のMCPツールをそのまま流用できます。MCPサーバーの設定タイプもMCPプロトコルの用語に合わせて整理されており、MCPStdioServerConfigとMCPHTTPServerConfigで明確に分かれています。
セッション単位の認証
v0.3.0から、セッションごとに異なるGitHubトークンを設定できます。同じCLIサーバー上で複数ユーザーのCopilotアカウントを扱う場合に、認証・クォータ・コンテンツ除外ポリシーをセッション単位で分離できます。マルチテナント構成のサービスに組み込む際に役立つ機能です。
BYOK(Bring Your Own Key)
GitHubのCopilotサブスクリプションなしでも使えます。OpenAI・Azure AI Foundry・AnthropicのAPIキーを設定すれば、そのプロバイダー経由でモデルを呼び出せます。GitHubアカウント認証が不要なため、社内ツールやオフラインに近い環境への組み込みにも向いています。
アーキテクチャ
SDKはJSON-RPCでCopilot CLIのサーバープロセスと通信します。
アプリケーション
↓
SDK クライアント
↓ JSON-RPC
Copilot CLI(サーバーモード)
CLIプロセスのライフサイクルはSDKが自動管理します。外部CLIサーバーへの接続も可能で、スケーリング要件に応じた構成を取れます。セッションのアイドルタイムアウトも設定可能で、長時間使われていないセッションを自動で破棄できます。
料金
GitHubのCopilotサブスクリプションが必要です(無料プランあり)。利用量はCopilot CLIと同じ課金モデルで、プロンプトごとにプレミアムリクエストのクォータを消費します(参考)。BYOKを使う場合はGitHubの認証・クォータ制限ともに適用されず、利用したプロバイダーの料金体系に従います。
現在のステータスと今後の見通し
2026年4月24日リリースのv0.3.0でパブリックプレビューに移行しました。v0.3.0ではAPI全体の命名規則が整理されており、GAリリースに向けてその後の破壊的変更を最小化する方針が示されています。コードを構造的に参照しているだけであれば既存のコードはそのまま動作しますが、型名を直接インポートしている箇所は更新が必要です。
コミュニティによる非公式SDKもRust・Clojure・C++向けに公開されており、より幅広い環境への対応が進んでいます。試験的な導入から始めて、GAリリースに合わせて本番適用を検討するのが現実的な進め方です。