跳至主要内容

故障排除 GitHub Copilot 云代理

了解在将任务分配给 Copilot 时可能出现的问题以及如何解决。

谁可以使用此功能?

Copilot 云代理在 GitHub Copilot Pro、GitHub Copilot Pro+、GitHub Copilot Business 和 GitHub Copilot Enterprise 计划中可用。该代理在 GitHub 上存储的所有仓库中均可用,受管用户账户拥有的仓库以及已明确禁用的仓库除外。
注册 Copilot

Copilot 在我的议题的“受托人”列表中不可用

只有在通过以下任意计划获取 Copilot 访问权限时,才能将议题分配给 Copilot:GitHub Copilot ProGitHub Copilot Pro+GitHub Copilot BusinessGitHub Copilot Enterprise

如果您尚未订阅上述任意计划,请点击此按钮获取更多信息
注册 Copilot

如果您拥有 GitHub Copilot Pro、GitHub Copilot Pro+、GitHub Copilot Business 或 GitHub Copilot Enterprise,请检查仓库是否未手动禁用 Copilot 云代理。

注意

您可以在 Copilot 设置的功能页面检查是否已为您启用 Copilot 云代理:github.com/settings/copilot/features

我拥有企业托管用户账户,但 Copilot 在我的个人仓库中无法工作

Copilot 云代理在由托管用户账户拥有的个人仓库中不可用。原因是 Copilot 云代理运行在 GitHub 托管的运行器上,而此类运行器不对由托管用户账户拥有的个人仓库开放。更多信息,请参见GitHub 托管的运行器

如果您拥有托管用户账户并尝试在个人仓库的议题中分配 Copilot,可能会看到一条错误信息,提示 GitHub Actions 对您的仓库不可用。

若要使用 Copilot 云代理,您需要使用组织拥有的仓库,而非个人仓库。

Copilot 无法从 Copilot Chat 创建拉取请求

如果您请求 Copilot 创建拉取请求,但它回复说无法直接创建拉取请求,请检查 Copilot 云代理是否可用。

重要提示

在 VS Code、Visual Studio 和 JetBrains IDE 中,您必须在提示中提及 @github 聊天参与者。在 GitHub.com 上的 Copilot Chat 中可以省略此提及。

我已将议题分配给 Copilot,但没有任何响应

稍等片刻后刷新页面。您应当看到 Copilot 在议题上留下 👀 表情。随后,Copilot 将打开一个与议题关联的草稿拉取请求,该请求会显示在议题时间轴中。

Copilot 已打开拉取请求,但没有任何响应

如果拉取请求时间轴中出现 “Copilot started work” 事件,点击View session查看会话日志。这些日志会实时流式显示,您可以看到 Copilot 正在做什么。

Copilot 不会响应我的拉取请求评论

Copilot 只会响应拥有仓库写权限的人的评论。

如果您拥有写入权限,并在已分配给 Copilot 的拉取请求中提及 @copilot,该评论会传递给 Copilot 云代理。您的评论会被添加一个眼睛表情 (👀),表示 Copilot 云代理已看到您的评论。随后,拉取请求时间轴中会添加 “Copilot started work” 事件。

如果未出现上述情况,可能是 Copilot 已从该拉取请求中取消分配,或您没有写入权限。请注意,Copilot 仅响应开放拉取请求中的提及。一旦拉取请求被合并或关闭,Copilot 云代理将不再响应新的提及或评论,以便更专注于活跃的开发工作。

根据代理会话日志,Copilot 似乎卡住了

Copilot 可能会卡住一段时间,然后再恢复运行。

如果会话一直卡住,它将在一小时后超时。您可以通过取消分配该议题,然后重新分配给 Copilot 来重试。

如果 Copilot 在响应评论时卡住,请尝试再次向拉取请求添加相同的评论。

当 Copilot 推送时,我的 GitHub Actions 工作流未运行

当 Copilot 将更改推送到拉取请求时,GitHub Actions 工作流不会自动运行。

要允许 GitHub Actions 工作流运行,请点击拉取请求合并框中的Approve and run workflows按钮。参见审查 GitHub Copilot 创建的拉取请求

Copilot 推送的更改未通过我的 CI 检查

在处理议题时,Copilot 可以访问由 GitHub Actions 提供支持的临时开发环境,在推送之前执行自动化测试和代码检查,以验证其工作。

如果提供了明确的操作指示,Copilot 最有可能这样做。最好的做法是在仓库中加入 .github/copilot-instructions.md 文件。参见使用 GitHub Copilot 完成任务的最佳实践

GitHub Copilot 发出了关于防火墙的警告

默认情况下,Copilot 对互联网的访问受到防火墙的限制。

限制互联网访问有助于管理数据泄露风险,因为 Copilot 的异常行为或恶意指令可能导致代码或其他敏感信息泄漏至远程位置。

如果 Copilot 尝试发出被防火墙阻止的请求,系统会在拉取请求正文(若 Copilot 响应议题分配)或评论(若 Copilot 响应评论)中添加警告。该警告会显示被阻止的地址以及尝试发出的命令。

Screenshot of a warning from Copilot about being blocked by the firewall.

更多信息请参见自定义或禁用 GitHub Copilot 云代理的防火墙

Copilot 未获取附加的屏幕截图

Copilot 云代理允许的最大图像大小为 3.00 MiB。大于此大小的图像将从请求中移除。

延伸阅读

© . This site is unofficial and not affiliated with GitHub, Inc.