copilot-sdk
多平台 SDK,用于将 GitHub Copilot Agent 集成到应用和服务中,支持 Node.js、Python、Go、.NET、Rust 和 Java。亮点:官方出品,底层复用 Copilot CLI 的生产级 agent 运行时,支持 BYOK(自带密钥)连接 OpenAI、Anthropic 等模型,无需 GitHub 身份验证。提供丰富的文档和 Cookbook,适合在自定义应用里快速嵌入 Copilot 的规划、工具调用和文件编辑能力。
README
GitHub Copilot CLI SDKs

面向每个应用的 agent(智能体)。
通过 GitHub Copilot SDK(Python、TypeScript、Go、.NET、Java 和 Rust),将 Copilot 的 agentic workflow(智能体工作流)嵌入到你的应用中。
GitHub Copilot SDK 暴露了 Copilot CLI 背后的同一引擎:一个经过生产测试的 agent 运行时,你可以通过编程方式调用。无需自行构建编排逻辑——你定义 agent 行为,Copilot 负责规划、工具调用、文件编辑等。
可用 SDK
| SDK | 位置 | 示例库 (Cookbook) | 安装命令 |
|---|---|---|---|
| Node.js / TypeScript | nodejs/ |
示例库 | npm install @github/copilot-sdk |
| Python | python/ |
示例库 | pip install github-copilot-sdk |
| Go | go/ |
示例库 | go get github.com/github/copilot-sdk/go |
| .NET | dotnet/ |
示例库 | dotnet add package GitHub.Copilot.SDK |
| Rust | rust/ |
— | cargo add github-copilot-sdk |
| Java | java/ |
示例库 | Maven 坐标com.github:copilot-sdk-java参见 Maven 和 Gradle 的安装说明 |
各 SDK 的安装、使用示例和 API 参考请参阅各自的 README。
快速上手
如需完整教程,请参见 快速入门指南。
快速步骤:
- (可选)安装 Copilot CLI
对于 Node.js、Python 和 .NET SDK,Copilot CLI 已自动捆绑,无需单独安装。
对于 Go、Java 和 Rust,请手动安装 CLI,或确保 copilot 在你的 PATH 中可用。Go 和 Rust 还提供了应用级别的 CLI 捆绑功能。
使用上述命令安装你偏好的 SDK。
查看 SDK README 获取使用示例和 API 文档。
架构
所有 SDK 通过 JSON-RPC 与 Copilot CLI 服务端通信:
你的应用
↓
SDK 客户端
↓ JSON-RPC
Copilot CLI(服务端模式)
SDK 自动管理 CLI 进程的生命周期。你也可以连接到外部 CLI 服务端——参见快速入门指南了解如何在服务端模式下运行 CLI。
常见问题
使用 SDK 需要 GitHub Copilot 订阅吗?
是的,使用 GitHub Copilot SDK 需要 GitHub Copilot 订阅,除非你使用 BYOK(Bring Your Own Key,自带密钥)。使用 BYOK 时,你可以通过配置受支持的 LLM(大语言模型)提供商的 API 密钥来使用 SDK,而无需 GitHub 身份认证。对于标准使用(非 BYOK),请参考 GitHub Copilot 定价页面,该页面包含一个有限使用量的免费层级。
SDK 使用如何计费?
GitHub Copilot SDK 的计费模式与 Copilot CLI 相同,每个提示(prompt)会计入你的 premium request(高级请求)配额。关于 premium request 的更多信息,请参见 GitHub Copilot 中的请求。
支持 BYOK(Bring Your Own Key)吗?
是的,GitHub Copilot SDK 支持 BYOK(自带密钥)。你可以配置 SDK 使用受支持的 LLM 提供商(如 OpenAI、Azure AI Foundry、Anthropic)的 API 密钥,通过这些提供商访问模型。请参见 BYOK 文档 了解设置说明和示例。
注意: BYOK 仅支持密钥认证。不支持 Microsoft Entra ID(Azure AD)、托管标识和第三方身份提供商。
支持哪些认证方法?
SDK 支持多种认证方法:
- GitHub 登录用户 - 使用
copilotCLI 登录时存储的 OAuth 凭据 - OAuth GitHub App - 传入你的 GitHub OAuth 应用的用户令牌
- 环境变量 -
COPILOT_GITHUB_TOKEN、GH_TOKEN、GITHUB_TOKEN - BYOK - 使用你自己的 API 密钥(无需 GitHub 认证)
每种方法的详细信息请参见 认证文档。
是否需要单独安装 Copilot CLI?
不需要——对于 Node.js、Python 和 .NET SDK,Copilot CLI 已自动作为依赖项捆绑。你无需单独安装。
对于 Go、Java 和 Rust SDK,CLI 默认不捆绑。请手动安装 CLI,或确保 copilot 在你的 PATH 中可用。Go 和 Rust 还提供了应用级别的 CLI 捆绑功能。
高级:你可以覆盖 CLI 二进制文件或连接到外部服务端。请参阅各 SDK 的 README 了解语言特定的选项。
默认启用了哪些工具?
默认情况下,SDK 暴露 Copilot CLI 的第一方工具,类似于使用 --allow-all 运行 CLI。工具的执行仍然受每个 SDK 的权限处理器(permission handler)控制,因此应用可以批准、拒绝或自定义工具调用。你可以通过配置 SDK 客户端选项来启用和禁用特定工具,以自定义工具的可用性。有关工具配置的详细信息,请参阅各 SDK 文档;有关可用工具列表,请参阅 Copilot CLI 文档。
是否可以使用自定义 agent、技能或工具?
是的,GitHub Copilot SDK 允许你定义自定义 agent、技能和工具。你可以通过实现自己的逻辑并按需集成额外的工具来扩展 agent 的功能。有关更多详细信息,请参阅你偏好的语言的 SDK 文档。
是否有加速开发的指令或 SDK 指南?
有的,请查看自定义指令和 SDK 特定指南:
支持哪些模型?
Copilot CLI 可用的所有模型均受 SDK 支持。SDK 还暴露了一个方法,可以返回可用模型,以便在运行时访问。
SDK 可以在生产环境中使用吗?
GitHub Copilot SDK 已正式发布(General Availability),遵循语义化版本控制。发布说明请参见 CHANGELOG.md。
如何报告问题或请求功能?
请使用 GitHub Issues 页面报告 bug 或请求新功能。我们欢迎你的反馈,以帮助改进 SDK。
快速链接
- 文档 – 完整文档索引
- 快速入门 – 上手教程
- 设置指南 – 架构、部署和扩展
- 认证 – GitHub OAuth、BYOK 等
- 功能 – 钩子(Hooks)、自定义 agent、MCP(模型上下文协议)、技能等
- 故障排除 – 常见问题及解决方案
- 示例库 (Cookbook) – 所有语言常见任务的实际配方
- 更多资源 – 其他示例、教程和社区资源
非官方、社区维护的 SDK
⚠️ 免责声明:这些是非官方、社区驱动的 SDK,不受 GitHub 支持。使用风险自负。
| SDK | 位置 |
|---|---|
| Clojure | copilot-community-sdk/copilot-sdk-clojure |
| C++ | 0xeb/copilot-sdk-cpp |
贡献
请参见 CONTRIBUTING.md 了解贡献指南。
许可
MIT