{"meta":{"title":"设置和使用 GitHub Copilot CLI","intro":"为 GitHub Enterprise Server 实例配置模型提供程序，然后将客户端连接到 Copilot CLI 实例。","product":"企业管理员","breadcrumbs":[{"href":"/zh/enterprise-server@3.22/admin","title":"企业管理员"},{"href":"/zh/enterprise-server@3.22/admin/github-copilot","title":"GitHub Copilot"},{"href":"/zh/enterprise-server@3.22/admin/github-copilot/copilot-cli","title":"Copilot CLI"},{"href":"/zh/enterprise-server@3.22/admin/github-copilot/copilot-cli/set-up-and-use-copilot-cli","title":"设置和使用 Copilot CLI"}],"documentType":"article"},"body":"# 设置和使用 GitHub Copilot CLI\n\n为 GitHub Enterprise Server 实例配置模型提供程序，然后将客户端连接到 Copilot CLI 实例。\n\n> \\[!NOTE]\n> 此功能目前处于技术预览版，可能会发生更改。\n\n您可以将 Copilot CLI 配置为在断连或物理隔离环境中与 GitHub Enterprise Server 配合使用，而无需连接到 GitHub Cloud。 管理员为实例配置模型提供程序，用户使用其Copilot CLI凭据进行连接GitHub Enterprise Server。\n\n设置此功能涉及两个角色：\n\n* **管理员**：使用 `ghe-config` 配置实例上的GitHub Enterprise Server模型提供程序。 这是一次性设置，需要管理 SSH 访问权限。\n* **最终用户**：设置本地计算机上的环境变量以连接到 Copilot CLI 实例。\n\n## 先决条件\n\n* 你拥有对 GitHub Enterprise Server 实例的 SSH 管理访问权限。\n* 你拥有受支持 LLM 提供程序的 API 密钥。\n* Copilot CLI 安装在客户端计算机上。 请参阅“[安装 GitHub Copilot CLI](/zh/enterprise-cloud@latest/copilot/how-tos/copilot-cli/set-up-copilot-cli/install-copilot-cli)”。\n* GitHub CLI（`gh`）安装在客户端计算机上。 请参阅GitHub CLI文档中的[GitHub CLI手册](https://cli.github.com/manual/)。\n\n有关支持的提供程序和模型要求的信息，请参阅 [在 GitHub Copilot CLI 中使用自己的 LLM 模型](/zh/enterprise-cloud@latest/copilot/how-tos/copilot-cli/customize-copilot/use-byok-models)。\n\n## 配置您的 GitHub Enterprise Server 实例\n\n此步骤适用于实例的 GitHub Enterprise Server 操作员或管理员。\n\n通过管理 SSH 访问 GitHub Enterprise Server 实例，使用以下 `ghe-config` 值配置模型提供程序。 配置后，运行 `ghe-config-apply` 以应用更改。\n\n| 变量名称                                      | 必需                                                                                           | 选项       | Description                                           |\n| ----------------------------------------- | -------------------------------------------------------------------------------------------- | -------- | ----------------------------------------------------- |\n| `app.copilot-proxy.enabled`               | 是的                                                                                           |          |                                                       |\n| `true`、`false`                            | 启用或禁用该功能。                                                                                    |          |                                                       |\n| `app.copilot-proxy.endpoint-url`          | 是的                                                                                           | URI      | 完整的上游基础 URL，包括任何版本前缀（例如，`https://api.openai.com/v1`）。 |\n| `secrets.copilot-proxy.endpoint-key`      | 是的                                                                                           | String   | 上游服务提供商的 API 密钥。                                      |\n| `app.copilot-proxy.provider-model-id`     | 是的                                                                                           | String   |                                                       |\n| Copilot CLI 在内部查找模型时使用的提供程序模型 ID。         |                                                                                              |          |                                                       |\n| `app.copilot-proxy.provider-type`         | 是的                                                                                           |          |                                                       |\n| `openai`、`azure`、`anthropic`              | 提供程序类型。 OpenAI 包括 OpenAI、Ollama、vLLM、Foundry Local，以及任何其他兼容 OpenAI Chat Completions API 的端点。 |          |                                                       |\n| `app.copilot-proxy.upstream-timeout`      | 否                                                                                            | 整数，以秒为单位 | 上游请求的读取/发送超时时间（秒）。 如果未设置，请回退到默认超时。                    |\n| `app.copilot-proxy.provider-wire-api`     | 否                                                                                            |          |                                                       |\n| `completions`、`responses`                 | 提供方的线传输 API 格式。                                                                              |          |                                                       |\n| `app.copilot-proxy.provider-wire-model`   | 否                                                                                            | String   | 如果发送给上游提供方的模型标识符与内部模型 ID 不同，则覆盖该模型标识符。                |\n| `app.copilot-proxy.enable-upstream-probe` | 否                                                                                            |          |                                                       |\n| `true`、`false`                            | 启用或禁用启动上游探测。 默认为启用。 禁用时，将跳过启动探测。                                                             |          |                                                       |\n\n例如，以下命令配置 OpenAI 提供程序。\n\n```shell\nghe-config app.copilot-proxy.enabled true\nghe-config app.copilot-proxy.endpoint-url 'https://api.openai.com/v1'\nghe-config secrets.copilot-proxy.endpoint-key 'YOUR-API-KEY'\nghe-config app.copilot-proxy.provider-model-id 'gpt-5.5'\nghe-config app.copilot-proxy.provider-wire-model 'gpt-5.5'\nghe-config app.copilot-proxy.provider-type openai\nghe-config app.copilot-proxy.upstream-timeout 300\nghe-config app.copilot-proxy.enable-upstream-probe false\nghe-config-apply\n```\n\n在应用该配置之前，请将 `YOUR-API-KEY` 替换为真实的 API 密钥。\n\n## 配置您的 Copilot CLI 客户端（终端用户）\n\n在启动Copilot CLI之前，请设置以下环境变量，将GitHub Enterprise Server配置为连接到您的Copilot CLI实例。\n\n| 环境变量                          | 必需 | Description                                                                   |\n| ----------------------------- | -- | ----------------------------------------------------------------------------- |\n| `COPILOT_PROVIDER_GHES_HOST`  | 是的 | 实例的 GitHub Enterprise Server 主机名。                                             |\n| `COPILOT_PROVIDER_GHES_TOKEN` | 是的 | 用于 personal access token 实例的 GitHub Enterprise Server。 此令牌用于对发送到该实例的请求进行身份验证。 |\n| `COPILOT_OFFLINE`             | 是的 | 启用脱机模式。 仅当启用脱机模式时，提供程序 GitHub Enterprise Server 才处于活动状态。                      |\n\n## 了解客户端（最终用户）令牌\n\nCopilot CLI 需要访问 LLM 推理，因此 `COPILOT_PROVIDER_GHES_TOKEN` 始终是必需的。 你可能也非常希望 Copilot CLI 执行 GitHub 诸如创建问题、拉取请求和搜索存储库等操作。 此类操作可以通过 GitHub CLI 进行。\n\n建议优先运行 `gh auth login --hostname YOUR-GHES-HOSTNAME`。 成功后，下一步是将 `COPILOT_PROVIDER_GHES_TOKEN` 设置为在 `gh auth login --hostname YOUR-GHES-HOSTNAME` 中生成的令牌。 动态获取令牌比从 `~/.config/gh/hosts.yml` 复制令牌更安全。 您可以通过使用`COPILOT_PROVIDER_GHES_TOKEN=\"$(gh auth token --hostname YOUR-GHES-HOSTNAME)\"`来实现。\n\n或者，您可以在 personal access token 实例上生成一个 GitHub Enterprise Server，将该令牌设为 `COPILOT_PROVIDER_GHES_TOKEN`，并在运行 `gh auth login --hostname YOUR-GHES-HOSTNAME` 时使用同一个令牌。\n\n在以交互方式使用 Copilot CLI 时，上述方法有效。 对于自动化，需要以不同的方式执行一些操作：\n\n* 将`GITHUB_ENTERPRISE_TOKEN`（或`GH_ENTERPRISE_TOKEN`）设为personal access token。\n* 将 `GH_HOST` 设置为您的服务器主机名。\n* 当针对同一主机同时存在 `GH_ENTERPRISE_TOKEN` 凭据和 `gh auth login` 凭据时，环境变量具有更高的优先级。\n\n## 建议的最终用户设置\n\n1. 进行身份验证GitHub CLI。\n\n   ```shell\n   gh auth login --hostname YOUR-GHES-HOSTNAME\n   ```\n\n2. 设置 Copilot CLI 所需的环境变量。\n\n   ```shell\n   export COPILOT_PROVIDER_GHES_HOST=YOUR-GHES-HOSTNAME\n   export COPILOT_PROVIDER_GHES_TOKEN=\"$(gh auth token --hostname YOUR-GHES-HOSTNAME)\"\n   export COPILOT_OFFLINE=true\n   ```\n\n   如果你已使用 `gh auth login` 通过多个帐户完成身份验证，则可以将 `GH_HOST` 设置为你的服务器主机名，并将 `GH_ENTERPRISE_TOKEN`（或 `\"$(gh auth token --hostname YOUR-GHES-HOSTNAME)\"`）设置为 `GITHUB_ENTERPRISE_TOKEN`。 这样可确保 GitHub CLI 以 GitHub Enterprise Server 实例为目标。\n\n   ```shell\n   export GH_HOST=YOUR-GHES-HOSTNAME\n   export GH_ENTERPRISE_TOKEN=\"$(gh auth token --hostname YOUR-GHES-HOSTNAME)\"\n   ```\n\n3. 启动 Copilot CLI。\n\n```bash\ncopilot\n```\n\n可以将整个设置作为脚本运行。\n\n## Examples\n\n如果 GitHub Enterprise Server 和你的 Copilot CLI 配置都正确，那么你应该会在 Copilot CLI 会话中看到如下所示的响应。\n\n```shell\n     • fabric-core-mcp — disabled\n     • powerbi-mcp — disabled\n     • slack — connected\n\n ● Current model: gpt-5.5\n\n ❯ Hello                                                                   13:31\n\n ● Hello!\n\n ❯ what is going on in github/codeql-action repo?                          13:33\n\n ● I’ll check recent repository activity on the GHES host: repo metadata, open \n   PRs/issues, and latest commits.\n\n $ Shell Fetch repo metadata 2 lines…                                         5s\n   gh api --hostname \"$GH_HOST\" repos/github/codeql-action --jq '{name_with_own…\n```\n\n## GitHub Enterprise Server 支持的功能\n\n有关 Copilot CLI 功能的最新信息，请参阅 [GitHub Copilot CLI](/zh/enterprise-cloud@latest/copilot/how-tos/copilot-cli)，以其作为主要准确信息来源。 通常，在 GitHub 离线配置中，任何依赖于连接到 GitHub Enterprise Server 云服务的功能均不可用。\n\n下表对 GitHub Enterprise Server 产品/服务中可提供的内容作了方向性概览。\n\n| 能力                                                                                                                                                                                                                                                                                                                                               |                                                                                                                                             GitHub / GitHub Enterprise Cloud                                                                                                                                             |                                                                                                                                                                                                       GitHub Enterprise Server                                                                                                                                                                                                      |\n| :----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | :----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------: | :---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------: |\n| AI 辅助编码（提示、代码生成、调试）                                                                                                                                                                                                                                                                                                                              | <svg version=\"1.1\" width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" class=\"octicon octicon-check\" aria-label=\"Available\" role=\"img\"><path d=\"M13.78 4.22a.75.75 0 0 1 0 1.06l-7.25 7.25a.75.75 0 0 1-1.06 0L2.22 9.28a.751.751 0 0 1 .018-1.042.751.751 0 0 1 1.042-.018L6 10.94l6.72-6.72a.75.75 0 0 1 1.06 0Z\"></path></svg> |                                                       <svg version=\"1.1\" width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" class=\"octicon octicon-check\" aria-label=\"Available\" role=\"img\"><path d=\"M13.78 4.22a.75.75 0 0 1 0 1.06l-7.25 7.25a.75.75 0 0 1-1.06 0L2.22 9.28a.751.751 0 0 1 .018-1.042.751.751 0 0 1 1.042-.018L6 10.94l6.72-6.72a.75.75 0 0 1 1.06 0Z\"></path></svg>                                                      |\n| Shell 命令和文件操作                                                                                                                                                                                                                                                                                                                                    | <svg version=\"1.1\" width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" class=\"octicon octicon-check\" aria-label=\"Available\" role=\"img\"><path d=\"M13.78 4.22a.75.75 0 0 1 0 1.06l-7.25 7.25a.75.75 0 0 1-1.06 0L2.22 9.28a.751.751 0 0 1 .018-1.042.751.751 0 0 1 1.042-.018L6 10.94l6.72-6.72a.75.75 0 0 1 1.06 0Z\"></path></svg> |                                                       <svg version=\"1.1\" width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" class=\"octicon octicon-check\" aria-label=\"Available\" role=\"img\"><path d=\"M13.78 4.22a.75.75 0 0 1 0 1.06l-7.25 7.25a.75.75 0 0 1-1.06 0L2.22 9.28a.751.751 0 0 1 .018-1.042.751.751 0 0 1 1.042-.018L6 10.94l6.72-6.72a.75.75 0 0 1 1.06 0Z\"></path></svg>                                                      |\n| GitHub 操作（问题、PR、存储库）通过 `gh` CLI                                                                                                                                                                                                                                                                                                                  | <svg version=\"1.1\" width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" class=\"octicon octicon-check\" aria-label=\"Available\" role=\"img\"><path d=\"M13.78 4.22a.75.75 0 0 1 0 1.06l-7.25 7.25a.75.75 0 0 1-1.06 0L2.22 9.28a.751.751 0 0 1 .018-1.042.751.751 0 0 1 1.042-.018L6 10.94l6.72-6.72a.75.75 0 0 1 1.06 0Z\"></path></svg> |                                                                                                                                                                                                                                                                                                                                                                                                                                     |\n| <svg version=\"1.1\" width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" class=\"octicon octicon-check\" aria-label=\"Available\" role=\"img\"><path d=\"M13.78 4.22a.75.75 0 0 1 0 1.06l-7.25 7.25a.75.75 0 0 1-1.06 0L2.22 9.28a.751.751 0 0 1 .018-1.042.751.751 0 0 1 1.042-.018L6 10.94l6.72-6.72a.75.75 0 0 1 1.06 0Z\"></path></svg>（需要已通过该实例身份验证的 `gh` CLI） |                                                                                                                                                                                                                                                                                                                          |                                                                                                                                                                                                                                                                                                                                                                                                                                     |\n| GitHub MCP 服务器工具                                                                                                                                                                                                                                                                                                                                 | <svg version=\"1.1\" width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" class=\"octicon octicon-check\" aria-label=\"Available\" role=\"img\"><path d=\"M13.78 4.22a.75.75 0 0 1 0 1.06l-7.25 7.25a.75.75 0 0 1-1.06 0L2.22 9.28a.751.751 0 0 1 .018-1.042.751.751 0 0 1 1.042-.018L6 10.94l6.72-6.72a.75.75 0 0 1 1.06 0Z\"></path></svg> | <svg version=\"1.1\" width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" class=\"octicon octicon-x\" aria-label=\"Not available\" role=\"img\"><path d=\"M3.72 3.72a.75.75 0 0 1 1.06 0L8 6.94l3.22-3.22a.749.749 0 0 1 1.275.326.749.749 0 0 1-.215.734L9.06 8l3.22 3.22a.749.749 0 0 1-.326 1.275.749.749 0 0 1-.734-.215L8 9.06l-3.22 3.22a.751.751 0 0 1-1.042-.018.751.751 0 0 1-.018-1.042L6.94 8 3.72 4.78a.75.75 0 0 1 0-1.06Z\"></path></svg> |\n| Web 搜索和 Web 提取                                                                                                                                                                                                                                                                                                                                   | <svg version=\"1.1\" width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" class=\"octicon octicon-check\" aria-label=\"Available\" role=\"img\"><path d=\"M13.78 4.22a.75.75 0 0 1 0 1.06l-7.25 7.25a.75.75 0 0 1-1.06 0L2.22 9.28a.751.751 0 0 1 .018-1.042.751.751 0 0 1 1.042-.018L6 10.94l6.72-6.72a.75.75 0 0 1 1.06 0Z\"></path></svg> | <svg version=\"1.1\" width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" class=\"octicon octicon-x\" aria-label=\"Not available\" role=\"img\"><path d=\"M3.72 3.72a.75.75 0 0 1 1.06 0L8 6.94l3.22-3.22a.749.749 0 0 1 1.275.326.749.749 0 0 1-.215.734L9.06 8l3.22 3.22a.749.749 0 0 1-.326 1.275.749.749 0 0 1-.734-.215L8 9.06l-3.22 3.22a.751.751 0 0 1-1.042-.018.751.751 0 0 1-.018-1.042L6.94 8 3.72 4.78a.75.75 0 0 1 0-1.06Z\"></path></svg> |\n| Copilot 模型选择（由 GitHub 托管的模型）                                                                                                                                                                                                                                                                                                                     | <svg version=\"1.1\" width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" class=\"octicon octicon-check\" aria-label=\"Available\" role=\"img\"><path d=\"M13.78 4.22a.75.75 0 0 1 0 1.06l-7.25 7.25a.75.75 0 0 1-1.06 0L2.22 9.28a.751.751 0 0 1 .018-1.042.751.751 0 0 1 1.042-.018L6 10.94l6.72-6.72a.75.75 0 0 1 1.06 0Z\"></path></svg> | <svg version=\"1.1\" width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" class=\"octicon octicon-x\" aria-label=\"Not available\" role=\"img\"><path d=\"M3.72 3.72a.75.75 0 0 1 1.06 0L8 6.94l3.22-3.22a.749.749 0 0 1 1.275.326.749.749 0 0 1-.215.734L9.06 8l3.22 3.22a.749.749 0 0 1-.326 1.275.749.749 0 0 1-.734-.215L8 9.06l-3.22 3.22a.751.751 0 0 1-1.042-.018.751.751 0 0 1-.018-1.042L6.94 8 3.72 4.78a.75.75 0 0 1 0-1.06Z\"></path></svg> |\n| 遥测和使用情况报告                                                                                                                                                                                                                                                                                                                                        | <svg version=\"1.1\" width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" class=\"octicon octicon-check\" aria-label=\"Available\" role=\"img\"><path d=\"M13.78 4.22a.75.75 0 0 1 0 1.06l-7.25 7.25a.75.75 0 0 1-1.06 0L2.22 9.28a.751.751 0 0 1 .018-1.042.751.751 0 0 1 1.042-.018L6 10.94l6.72-6.72a.75.75 0 0 1 1.06 0Z\"></path></svg> | <svg version=\"1.1\" width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" class=\"octicon octicon-x\" aria-label=\"Not available\" role=\"img\"><path d=\"M3.72 3.72a.75.75 0 0 1 1.06 0L8 6.94l3.22-3.22a.749.749 0 0 1 1.275.326.749.749 0 0 1-.215.734L9.06 8l3.22 3.22a.749.749 0 0 1-.326 1.275.749.749 0 0 1-.734-.215L8 9.06l-3.22 3.22a.751.751 0 0 1-1.042-.018.751.751 0 0 1-.018-1.042L6.94 8 3.72 4.78a.75.75 0 0 1 0-1.06Z\"></path></svg> |\n| 自动更新                                                                                                                                                                                                                                                                                                                                             | <svg version=\"1.1\" width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" class=\"octicon octicon-check\" aria-label=\"Available\" role=\"img\"><path d=\"M13.78 4.22a.75.75 0 0 1 0 1.06l-7.25 7.25a.75.75 0 0 1-1.06 0L2.22 9.28a.751.751 0 0 1 .018-1.042.751.751 0 0 1 1.042-.018L6 10.94l6.72-6.72a.75.75 0 0 1 1.06 0Z\"></path></svg> | <svg version=\"1.1\" width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" class=\"octicon octicon-x\" aria-label=\"Not available\" role=\"img\"><path d=\"M3.72 3.72a.75.75 0 0 1 1.06 0L8 6.94l3.22-3.22a.749.749 0 0 1 1.275.326.749.749 0 0 1-.215.734L9.06 8l3.22 3.22a.749.749 0 0 1-.326 1.275.749.749 0 0 1-.734-.215L8 9.06l-3.22 3.22a.751.751 0 0 1-1.042-.018.751.751 0 0 1-.018-1.042L6.94 8 3.72 4.78a.75.75 0 0 1 0-1.06Z\"></path></svg> |"}