Skip to main content

GitHub Copilot 编码代理疑难解答

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

谁可以使用此功能?

Copilot 编码智能体 可用于 GitHub Copilot Pro、GitHub Copilot Pro+、GitHub Copilot Business 和 GitHub Copilot Enterprise 计划。 该代理在 GitHub 上存储的所有仓库中均可用,但以下情况除外:由 托管用户帐户 拥有的仓库,以及已显式禁用该代理的仓库。
Sign up for Copilot

Copilot 不在我的问题的“被分配者”列表中

只有通过 GitHub Copilot Pro 计划、GitHub Copilot Pro+ 计划、GitHub Copilot Business 或 GitHub Copilot Enterprise 计划访问 Copilot 时,才能将问题分配给 Copilot****************。

如果还没有其中一个计划的订阅,请单击此按钮了解详细信息:
注册 Copilot

如果已有 GitHub Copilot Pro、GitHub Copilot Pro+、GitHub Copilot Business 或 GitHub Copilot Enterprise,请检查 Copilot 编码智能体 是否已启用,以及是否未手动对存储库禁用__:

注意

可以在 Copilot 设置的功能页中检查 Copilot 编码智能体 是否已启用:github.com/settings/copilot/features

我拥有 Enterprise Managed User 帐户,但 Copilot 在我的个人仓库中无法运行

Copilot 编码智能体 不适用于由 托管用户帐户 拥有的个人仓库。 这是因为 Copilot 编码智能体 运行在 GitHub 托管的运行程序上,而这些运行程序无法用于 托管用户帐户 拥有的个人存储库。 有关详细信息,请参阅“GitHub 托管的运行程序”。

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

要使用 Copilot 编码智能体,您需要在由您的组织拥有的仓库中操作,而不是在个人仓库中操作。

Copilot 无法从 Copilot 对话助手

创建拉取请求

如果要求了 Copilot 创建拉取请求,而它回应说无法直接创建拉取请求,请检查 Copilot 编码智能体 是否可用。

重要

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

我向 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 推送时,我的 GitHub Actions 工作流没有运行

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

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

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

在处理问题时,Copilot 可以访问其自己的临时开发环境(境由 GitHub Actions 提供支持),可在其中执行自动测试和 Linter 来验证其工作,然后再推送。

如果给出了明确的操作说明,则最有可能这样做。 最好的做法是使用 .github/copilot-instructions.md 文件。 请参阅“使用 GitHub Copilot 处理任务的最佳做法”。

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

默认情况下,Copilot 对 Internet 的访问权限受防火墙限制。

限制对 Internet 的访问有助于管理数据外泄风险,因为 Copilot 的意外行为或其收到的恶意指令可能导致代码或其他敏感信息泄露到远程位置。

如果 Copilot 尝试发出被防火墙阻止的请求,则会在拉取请求正文(如果 Copilot 回应的是问题作业)或评论(如果 Copilot 回应的是评论)中添加警告。 警告会显示受阻止的地址和试图发出请求的命令。

该屏幕截图显示了来自 Copilot 的关于受防火墙阻止的警告。

有关详细信息,请参阅“自定义或禁用 GitHub Copilot 编码代理的防火墙”。

Copilot 未接收到附加的屏幕截图

Copilot 编码智能体 允许的最大图像大小为 3.00 MiB。 系统将从请求中删除大于此大小的图像。

其他阅读材料

  •           [AUTOTITLE](/copilot/tutorials/coding-agent/best-practices)
    
  •           [AUTOTITLE](/copilot/customizing-copilot/customizing-the-development-environment-for-copilot-coding-agent)