
关于
构建以编程方式与 GitHub Copilot 交互的应用。SDK 封装了 Copilot CLI,提供结构化的 AI 辅助编程接口。
name: copilot-sdk description: "构建与 GitHub Copilot 程序化交互的应用。SDK 通过 JSON-RPC 封装 Copilot CLI,提供会话管理、自定义工具、钩子、MCP 服务器集成和跨 Node.js、Python、Go、.NET 的流式传输。" risk: unknown source: community date_added: "2026-02-27"
GitHub Copilot SDK
构建与 GitHub Copilot 程序化交互的应用。SDK 通过 JSON-RPC 封装 Copilot CLI,提供会话管理、自定义工具、钩子、MCP 服务器集成和跨 Node.js、Python、Go、.NET 的流式传输。
前提条件
- GitHub Copilot CLI 已安装并认证(
copilot --version验证) - GitHub Copilot 订阅(Individual、Business 或 Enterprise)——BYOK 不需要
- 运行时: Node.js 18+ / Python 3.8+ / Go 1.21+ / .NET 8.0+
安装
| 语言 | 包 | 安装命令 |
|------|-----|----------|
| Node.js | @github/copilot-sdk | npm install @github/copilot-sdk |
| Python | github-copilot-sdk | pip install github-copilot-sdk |
| Go | github.com/github/copilot-sdk/go | go get github.com/github/copilot-sdk/go |
| .NET | GitHub.Copilot.SDK | dotnet add package GitHub.Copilot.SDK |
核心模式:Client → Session → Message
所有 SDK 使用遵循此模式:创建客户端,创建会话,发送消息。
Node.js / 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();
Python
import asyncio
from copilot import CopilotClient
async def main():
client = CopilotClient()
await client.start()
session = await client.create_session({"model": "gpt-4.1"})
response = await session.send_and_wait({"prompt": "What is 2 + 2?"})
print(response.data.content)
await client.stop()
asyncio.run(main())
Go
client := copilot.NewClient(nil)
if err := client.Start(ctx); err != nil { log.Fatal(err) }
defer client.Stop()
session, _ := client.CreateSession(ctx, &copilot.SessionConfig{Model: "gpt-4.1"})
response, _ := session.SendAndWait(ctx, copilot.MessageOptions{Prompt: "What is 2 + 2?"})
fmt.Println(*response.Data.Content)
.NET
await using var client = new CopilotClient();
兼容工具
Claude CodeCursor
标签
AI与机器学习