Skip to main content

使用代理的 GitHub Copilot 扩展快速入门

生成并试用 GitHub 的 Blackbeard 扩展,以了解 GitHub Copilot Extensions 的开发流程。

Note

GitHub Copilot Extensions 为 公共预览版,可能随时更改。

Blackbeard 扩展是一个 GitHub Copilot Extension,它使用一个简单的代理构建而成,该代理利用 Copilot 的大语言模型 (LLM) API 和特殊的系统提示,以海盗模式响应请求。 本指南使用了一个简单的代理实现,但对于技能集来说,该过程是相似的。

本快速入门旨在帮助你尽快构建 Blackbeard 扩展并与其聊天,这样你无需部署基础结构就能开发和测试自己的扩展。 对于生产环境,你需要在可公开访问的服务器上为你的代理或技能集终结点托管应用程序。 若要改为了解如何创建新的 GitHub Copilot Extension,请参阅“设置 Copilot 扩展”。

1.创建并安装 GitHub App。

在你的 GitHub 帐户的开发人员设置中,创建一个 GitHub App。 你的 GitHub App 必须:

  • 有名称
  • 有主页 URL
  • 已取消选中 Webhook

在创建应用之后,单击边栏中的“Install App”,然后将应用安装到你的帐户****。

有关详细说明,请参阅“为 Copilot 扩展创建 GitHub 应用”。

2.在本地克隆和托管 Blackbeard 代理

无需将 Blackbeard 代理作为 Web 应用进行部署,而是可以在本地托管该代理,这样构建过程会快得多。

  1. 使用 VS Code 内置的终端,克隆 copilot-extensions/blackbeard-extension 仓库。
  2. 在同一个终端中,运行 npm install 以安装必要的依赖项,然后运行 npm start 以便在端口 3000 启动 Blackbeard 代理。
  3. 在 VS Code 面板的“Ports”选项卡中,单击“Forward a port”或“Add port”,然后添加端口 3000********。
  4. 右键单击该端口并将可见性设置为“Public”,然后复制本地地址。

3.集成并测试 Blackbeard 扩展

在设置 GitHub App 和 Blackbeard 代理之后,可以将该代理与你的应用集成,并测试 Blackbeard 扩展。 需要对 GitHub App 设置进行以下更改:

  • 在“General”设置的“Callback URL”字段内,粘贴代理的本地地址。
  • 在“Permissions & events”设置中,向 Copilot Chat 授予只读权限。
  • 在“Copilot”设置中,将应用类型设置为“Agent”,然后填写其余字段。

在更新 GitHub App 设置之后,可以通过在 Copilot Chat 窗口中键入 @YOUR-EXTENSION-NAME,然后像往常一样发送提示,开始与扩展进行聊天。

如需更多详细说明,请参阅“为 Copilot 扩展配置 GitHub Apps”。

2.在 codespace 中克隆并托管 Blackbeard 代理

无需将 Blackbeard 代理作为 Web 应用进行部署,而是可以在 codespace 中托管该代理,这样构建过程会快得多。

  1. 导航到 copilot-extensions/blackbeard-extension 仓库。 选择 “Code”下拉菜单,然后单击“Create codespace on main”********。
  2. 要找到新的 codespace,选择 “Code” 下拉菜单。**** 在新的 codespace 旁边,选择 ,然后单击 “Open in Browser”****。
  3. 在集成终端中,运行 npm start 以在端口 3000 上启动 Blackbeard 代理。
  4. 在 VS Code 面板的“Ports”选项卡中,单击“Forward a port”,然后添加端口 3000****。
  5. 右键单击该端口并将可见性设置为“Public”,然后复制本地地址。

3.集成并测试 Blackbeard 扩展

在设置 GitHub App 和 Blackbeard 代理之后,可以将该代理与你的应用集成,并测试 Blackbeard 扩展。 需要对 GitHub App 设置进行以下更改:

  • 在“General”设置的“Callback URL”字段内,粘贴代理的转发地址。
  • 在“Permissions & events”设置中,向 Copilot Chat 授予只读权限。
  • 在“Copilot”设置中,将应用类型设置为“Agent”,然后填写其余字段。

在更新 GitHub App 设置之后,可以通过在受支持的客户端或 IDE 的 Copilot Chat 窗口中键入 @YOUR-EXTENSION-NAME,然后像往常一样发送提示,开始与扩展进行聊天。 有关支持的客户端和 IDE 的列表,请参阅“关于生成 Copilot 扩展”。

Note

不支持在 GitHub Codespaces 中与 GitHub Copilot Extensions 进行聊天。

如需更多详细说明,请参阅“为 Copilot 扩展配置 GitHub Apps”。

2.在本地克隆和启动 Blackbeard 代理

无需将 Blackbeard 代理作为 Web 应用进行部署,而是可以在本地托管该代理,这样构建过程会快得多。

  1. 使用命令行应用程序克隆 copilot-extensions/blackbeard-extension 仓库。
  2. 运行 npm install 以安装必要的依赖项,然后运行 npm start 以便在端口 3000 启动 Blackbeard 代理。

3.公开本地服务器

为了使 Blackbeard 代理能够被 Copilot 平台和 GitHub 访问,你需要公开本地服务器,以便它能够通过 HTTP 请求被访问。 可以使用任何端口转发或隧道服务来实现这一点。 对于以下步骤,我们将使用 ngrok。

  1. 导航到 ngrok 的下载页面,然后为操作系统安装相应的 ngrok 版本。

  2. 导航到 ngrok 设置和安装页面,然后登录或注册 ngrok 帐户。

  3. 若要公开本地服务器,请在命令行应用程序的新窗口中运行以下命令:

    Shell
    ngrok http http://localhost:3000
    
  4. 在命令行应用程序中的“Forwarding”旁边,复制 ngrok 分配给你的服务器的 URL。

4.集成并测试 Blackbeard 扩展

要将你的 GitHub App 与 Blackbeard 代理集成,需要对你的应用设置进行以下更改:

  • 在“General”设置的“Callback URL”字段内,粘贴已公开服务器的 URL。
  • 在“Permissions & events”设置中,向 Copilot Chat 授予只读权限。
  • 在“Copilot”设置中,将应用类型设置为“Agent”,然后填写其余字段。

在更新 GitHub App 设置之后,可以通过在 Copilot Chat 窗口中键入 @YOUR-EXTENSION-NAME,然后像往常一样发送提示,开始与扩展进行聊天。

如需更多详细说明,请参阅“为 Copilot 扩展配置 GitHub Apps”。

后续步骤

现在你已经有了一个可正常使用的 GitHub Copilot Extension,可以尝试基于 Blackbeard 代理进行构建,以开展代理开发方面的试验。

要了解更多复杂的代理实现,还可以查看以下示例代理和软件开发工具包 (SDK),所有这些均可在 copilot-extensions 组织中获取:

  • GitHub Models:更复杂的代理,可让你通过 Copilot Chat 询问 GitHub Marketplace 中上架的各种 LLM 并与之交互。 GitHub Models 代理使用了函数调用。
  • 函数调用:一个用 Go 编写的示例代理,演示了函数调用和确认对话框。
  • RAG 扩展:用 Go 编写的示例代理,演示了检索增强生成的简单实现。
  • 预览版 SDK:通过自动处理请求验证、有效负载分析和响应格式,简化了 Copilot Extensions 开发的 SDK。 此 SDK 允许扩展生成器更专注于创建核心功能,而不是样本代码。