GitHub 官方多语言 SDK,用于将 Copilot Agent 嵌入应用,支持自定义工具、提示词精细定制与 BYOK。
定位#
GitHub 官方推出的多语言 SDK,用于将 Copilot Agent 的规划、工具调用与文件编辑能力直接集成到各类应用和服务中。封装了与 Copilot CLI 完全相同的引擎,开发者无需自建 Agent 编排层。
核心能力#
- Agent 运行时:暴露与 Copilot CLI 相同引擎,处理规划、工具调用、文件编辑;默认启用全部工具(相当于
--allow-all,含文件系统、Git、Web 请求等),可按需配置 - 多语言支持:官方提供 Node.js/TypeScript、Python、Go、.NET、Java 五种 SDK
- 提示词工程:支持 "customize" 模式,可精准编辑系统提示词的 10 个独立段落(identity、tools 等),无需完全重写
- 交互扩展:支持注册斜杠命令(Commands)和 UI Elicitation 交互式输入对话框
- 配置与存储:MCP 配置自动发现(读取
.mcp.json、.vscode/mcp.json等);Node SDK 提供sessionFs虚拟化存储适配 Serverless 部署 - 认证与模型:支持 GitHub OAuth、环境变量 token 认证;支持 BYOK 接入 OpenAI、Azure AI Foundry、Anthropic 等,无需 GitHub 订阅;运行时可查询所有 Copilot CLI 可用模型
架构#
Your Application
↓
SDK Client
↓ JSON-RPC
Copilot CLI (server mode)
- 所有 SDK 均通过 JSON-RPC 协议与 Copilot CLI(server mode)通信
- SDK 自动管理 CLI 进程生命周期;支持通过
cliPath/cliUrl覆盖捆绑的 CLI,连接外部 server - 仓库根目录包含
sdk-protocol-version.json统一管控通信协议版本 - Monorepo 架构,包含
nodejs/、python/、go/、dotnet/等子目录
安装#
- 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 SDK 自动捆绑 Copilot CLI;Go SDK 需手动安装或确保 copilot 在 PATH 中。
关键配置项#
| 配置参数 | 说明 |
|---|---|
enableConfigDiscovery | 设置为 true 自动发现 MCP server 配置和 skill 目录 |
onPermissionRequest | 权限请求回调处理器(如传入 approveAll 自动放行) |
commands | 注册自定义斜杠命令数组 |
onElicitationRequest | UI 交互请求处理器 |
systemMessage | 系统提示词配置(支持 "customize" 模式进行段落级编辑) |
cliPath / cliUrl | 覆盖捆绑的 CLI,指定自定义二进制路径或外部 server URL |
workspace_path | 指定 Agent 工作目录路径 |
认证方式#
- GitHub 登录(使用
copilot CLI login存储的 OAuth 凭据) - GitHub OAuth App token
- 环境变量:
COPILOT_GITHUB_TOKEN/GH_TOKEN/GITHUB_TOKEN - BYOK:使用自有 API Key(OpenAI、Anthropic 等),无需 GitHub 认证
生态与集成#
- 原生支持 MCP (Model Context Protocol) 配置自动发现,无缝接入符合 MCP 标准的外部工具 server
- 通过 BYOK 机制直接集成 OpenAI、Azure AI Foundry、Anthropic 等主流 LLM 供应商 API
- 存在非官方社区维护的 Rust、Clojure、C++ 版本 SDK
适用场景#
- 应用内嵌 Copilot Agent
- 自动化开发工作流(代码生成、文件编辑、Git 操作)
- BYOK 场景下的模型调用
- Serverless 环境下的无状态 Agent 部署
- 多语言技术栈团队统一集成
当前阶段#
Public Preview(截至 v0.2.2,2026-04-10),正式 GA 时间未公布。采用 MIT 许可证。