快速指南:将 GitHub Copilot SDK 集成至您的应用
介绍
GitHub Copilot 不仅是一个 IDE 插件;它是一个可以编写、重构甚至执行代码的 AI 代理。官方 Copilot SDK 将该代理暴露在一个简单的、与语言无关的 API 后面,您可以将其插入任何应用程序——无论是 Web、桌面、CLI 还是微服务。
使用 Copilot SDK 的理由
- 在自己的产品中运行 Copilot,无需浏览器。
- 从您自己的 UI 触发代码生成。
- 构建结合 Copilot 与其他服务的复杂工具链。
- 使用 Copilot CLI 统一计费与使用记录。
支持的语言与安装方式
SDK 支持 Python、Node.js/TypeScript、Go 及 .NET (C#)。安装方式每种语言一句命令:
# 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
提示:SDK 将 Copilot CLI 作为后台进程打包。请确保您拥有有效的 GitHub Copilot 订阅——免费版 CLI 可用但功能有限。
基本示例 – “Hello World” 代理
from github.copilot import Copilot
copilot = Copilot()
# Create a simple agent that writes a greeting
agent = copilot.agent(
name="greeting-agent",
description="Generate a friendly greeting in the target language.",
)
response = agent.run("create a greeting function that outputs 'Hello, world!' in Python.")
print(response.content)
执行 python hello_agent.py 将打印一个完整的 def greet(): 函数。
无限会话(Infinite Sessions)
从 v0.1.18 开始,SDK 支持 无限会话,让您在多次交互中保持相同上下文。启用方式在创建代理时传入 infinite=True:
agent = copilot.agent(
name="session-agent",
infinite=True,
)
agent.run() 都会看到会话历史,十分适合聊天式助手。
自定义工具与技能
您可以使用自己的命令行工具增强 Copilot。定义一个 Skill:
import { Copilot, Skill } from "@github/copilot-sdk";
const skill = new Skill({
name: "json‑pretty",
command: "python -m json.tool",
description: "Pretty‑prints JSON data.",
});
const copilot = new Copilot({
tools: [skill],
});
json‑pretty。
安全与 BYOK
SDK 支持 Bring‑Your‑Own‑Key(BYOK),可对传输数据进行加密。请通过以下方式配置您的密钥:
COPILOT_BK_SECRET=<your‑hex‑key>
常见问题
- 需要付费订阅吗? – 用于生产环境是必需的。免费 CLI 版可用,但速率受限。
- 它可以投入生产吗? – SDK 仍处于 技术预览 阶段,GA 之前可能会有细微调整。
- 可以切换底层模型吗? – SDK 提供列出可用模型的方法,您可以在
agent.run中传入模型名称。
入门资源
- Copilot SDK GitHub 页面 – 完整文档与示例。
- Copilot CLI 文档 – 安装与配置。
- SDK API 参考 – 按语言划分的文档。
结论
GitHub Copilot SDK 打开了一个世界,让 AI 编写流程成为您产品里的一级主角。只需几行代码,您就可以启动代理、添加自定义技能,并开始生成、重构甚至执行代码,同时利用 GitHub 的安全计费模式。
祝编码愉快!
原创文章:
查看原文