注意
Copilot SDK 当前处于技术预览阶段。功能和可用性可能会发生变化。
架构概览
每个 GitHub Copilot SDK 集成都遵循相同的核心模式:您的应用程序与 SDK 通信,SDK 通过 JSON‑RPC 与 Copilot CLI 交互。不同设置之间的区别在于 CLI 的运行位置、用户的身份验证方式以及会话的管理方式。
您是谁?
爱好者
您正在构建个人助理、业余项目或实验性应用。您希望以最简单的方式在代码中使用 Copilot。
从以下开始
- 使用本地 CLI 与 Copilot SDK—使用已在您机器上登录的 CLI。
- 使用捆绑的 CLI 与 Copilot SDK—将所有内容打包成独立应用。
内部应用开发者
您正在为团队或公司构建工具。用户是需要使用企业 GitHub 账户或组织成员身份进行身份验证的员工。
从以下开始
- 使用 GitHub OAuth 与 Copilot SDK—让员工使用其 GitHub 账户登录。
- 为后端服务设置 Copilot SDK—在内部服务中运行 SDK。
如果需要超出单服务器的扩展
- 扩展 Copilot SDK 部署—处理多个用户和服务。
应用开发者(独立软件供应商)
您正在为客户构建产品。您需要为用户处理身份验证——可以通过 GitHub 或自行管理身份。
从以下开始
- 使用 GitHub OAuth 与 Copilot SDK—让客户使用 GitHub 登录。
- BYOK 在
github/copilot-sdk仓库中——使用您自己的模型密钥管理身份。 - 为后端服务设置 Copilot SDK——从服务器端代码为您的产品提供动力。
用于生产环境
- 扩展 Copilot SDK 部署——可靠地为众多客户提供服务。
平台开发者
您正在将 Copilot 嵌入平台——API、开发者工具或供其他开发者构建的基础设施。您需要对会话、扩展和多租户进行细粒度控制。
从以下开始
- 为后端服务设置 Copilot SDK——核心服务器端集成。
- 扩展 Copilot SDK 部署——会话隔离、横向扩展、持久化。
根据您的身份验证模型
- 使用 GitHub OAuth 与 Copilot SDK——适用于 GitHub 认证的用户。
- BYOK 在
github/copilot-sdk仓库中——用于自主管理身份和模型访问。
决策矩阵
使用此表格根据您的需求找到合适的指南。
| 您的需求 | 指南 |
|---|---|
| 最简设置 | 在 Copilot SDK 中使用本地 CLI |
| 发布带有 Copilot 的独立应用 | 在 Copilot SDK 中使用绑定的 CLI |
| 用户使用 GitHub 登录 | 在 Copilot SDK 中使用 GitHub OAuth |
| 使用您自己的模型密钥(OpenAI、Azure 等) | BYOK 在 github/copilot-sdk 仓库中 |
| Azure BYOK 与托管标识(无 API 密钥) | 在 Copilot SDK 中使用 Azure 托管身份 |
| 在服务器上运行 SDK | 为后端服务设置 Copilot SDK |
| 为多个用户提供服务或横向扩展 | 扩展 Copilot SDK 部署 |
先决条件
所有指南均假设您已拥有
- Copilot CLI 已安装。更多信息请参阅 安装 GitHub Copilot CLI。
- 已安装任一 SDK
- Node.js:
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:请参阅
github/copilot-sdk-java仓库以获取 Maven/Gradle 设置
- Node.js:
如果您是 GitHub Copilot SDK 新手,请先阅读 Copilot SDK 入门指南,随后返回此处进行生产环境配置。
后续步骤
从上方的决策矩阵中选择最符合您情况的指南,或先阅读最贴近您角色的用户画像描述。