GitHub Copilot on GitHub.com 可以回答有关你的存储库的问题、规划并进行更改、查看拉取请求以及自动执行存储库任务。 可以从同一提示框提出问题和委托工作,也可以在 issue 和拉取请求工作流中直接使用 Copilot。
若要比较可以使用 Copilot的位置,请参阅 在何处使用GitHub Copilot。
如何在 Copilot 上借助 GitHub.com
可通过多种方式使用 Copilot :
- Chat 可让你询问有关存储库的问题、了解代码并探索可能的解决方案。
- 自主智能体验 可以通过读取文件、编辑代码并在云开发环境中运行测试来研究存储库、规划更改和完成多步骤任务。
- 代码评审 对拉取请求提供反馈并提出修复建议。
- 自动化 按计划或响应事件运行存储库任务,而不是每次都需要新的提示词。
例如,可以使用聊天来了解存储库如何处理身份验证,然后要求代理规划和添加缺少的测试。 更改进入拉取请求后,可以向 Copilot 请求评审。 为了随时间推移保持测试覆盖率,可以设置自动化来检查每周是否有缺失的测试,并建议添加内容供你查看。
聊天和智能体体验
在 GitHub.com 上,你可以从提问转向在同一对话中委派工作。
提出问题
Chat 可以解释不熟悉的代码、建议修复方案、生成测试或比较方法。 后续问题使你无需启动新对话即可优化请求。
Chat 预配置了用于创建分支、更新文件以及创建或更新问题等任务的工具。 它还支持语义代码搜索。
委派工作
Copilot cloud agent 可以研究存储库、计划更改并在后台实施这些更改。 它可以在临时云开发环境中(而不是本地 IDE)编辑文件并运行测试和代码检查工具。 请参阅“IDE 中的GitHub Copilot”。
可以从智能体面板、对话、问题或 GitHub.com 上的拉取请求开始工作。
在安全活动中,可以将代码扫描警报分配给 Copilot 进行修复。 请参阅“修复安全活动中的警报”。
实现更改时, Copilot 处理分支创建、提交消息和推送更改。 可以在创建拉取请求之前查看更改和请求优化,或在初始提示中请求拉取请求。 你也可以自己继续这项工作。 请参阅“使用 Copilot cloud agent 进行代码更改的研究、计划和迭代”。
会话上下文
在 GitHub.com 上,Copilot Chat 和 Copilot cloud agent 可以共享上下文。 从聊天启动代理会话时,会话将包含对话的上下文。 会话运行时,可以继续与 Copilot 聊聊其进度并引导工作。
Copilot Chat 还可以通过拉取相关代理会话日志来回答有关由 Copilot 创建的拉取请求的问题。 你可以询问更改的内容、已验证的内容以及为什么,而无需离开对话。
此类上下文传递仅限于你当前正在处理的 Copilot Chat 和 cloud agent 会话。 它不同于 Copilot Memory,后者会跨会话构建对您的存储库和偏好设置的长期、持久的理解。 有关详细信息,请参阅“关于GitHub Copilot内存”。
在GitHub.com上,会话日志显示使用的工作和工具。 共享会话和拉取请求让具有存储库访问权限的团队成员跟进工作进展并查看更改。 日志不会替代你自己的审查和测试。 请参阅“管理智能体会话”。
跨设备会话
启用远程控制后,可以从 GitHub Copilot CLI 监视和控制 GitHub.com 会话。 它将继续在原始计算机上运行,原始计算机必须保持联机状态。 请参阅“GitHub Copilot CLI 会话的远程控制”。
在 GitHub.com 上,您可以询问跨 Copilot 界面的同步会话历史记录。 这包括 Copilot cloud agent 会话和 Copilot code review 会话,以及来自 GitHub Copilot CLI、VS Code、JetBrains IDEs 和 GitHub Copilot app 的会话。
您只能查询自己启动的会话。 必须启用同步,并且组织的策略必须允许同步。 请参阅 查询过去的会话。
代码评审
在 GitHub.com 上,Copilot code review 查看拉取请求更改、识别潜在问题并建议修复。 它使用智能体能力从存储库收集上下文。 可以请求评审或配置自动评审,然后查看并应用建议的更改。 请参阅“关于GitHub Copilot 代码评审”。
Copilot 还可以直接在拉取请求说明或注释中生成更改摘要。 这有助于审阅者了解这些更改,但与查看代码不同。 请参阅“使用 GitHub Copilot 创建拉取请求摘要”。
自动化和智能体工作流
Automations 允许定义一次任务,并让 Copilot cloud agent 按计划运行该任务或在响应存储库事件时运行该任务。 例如,自动化可以对传入的问题进行分类处理,或准备每周版本说明。 可以从**** 上的存储库中的GitHub.com选项卡创建和管理自动化。 自动化在符合条件的专用存储库和内部存储库中可用。 请参阅“关于 Copilot 自动化”。
GitHub Agentic Workflows 提供另一种方法,用于在 GitHub.com 上的存储库中自动执行任务。 在 Markdown 文件中以自然语言定义任务,这些任务作为 GitHub Actions 工作流运行。 这些工作流可以使用 Copilot 或其他受支持的编码代理。 请参阅“关于GitHub代理工作流”。
自定义
在 GitHub.com 上,自定义说明可保存用于聊天、存储库约定和组织指南的个人首选项。 Copilot Spaces 组织供提问使用的共享上下文。 对于委派的工作,custom agents 和代理技能提供特定于任务的说明和资源。 模型上下文协议 (MCP) 服务器将代理连接到其他工具和数据。 挂钩可以在代理工作期间运行命令进行验证或日志记录。 有关设置指南,请参阅 自定义 Copilot。
AI 模型
您可以更改 Copilot 用于生成回复的模型。 你可能会发现性能更好的不同模型,或提供更有用响应的模型,具体取决于你提出的问题类型。 可选项包括具备高级功能的高端模型。 若要更改 IDE 中的模型,请参阅 更改 GitHub Copilot 对话助手 的 AI 模型。 若要更改或比较模型 GitHub,请参阅 在GitHub中询问有关GitHub Copilot的问题。
在 GitHub.com 上,可用模型取决于计划和帐户策略。 请参阅“GitHub Copilot中支持的 AI 模型”。
对于 Copilot cloud agent,选择模型的能力也取决于如何启动任务。 请参阅“更改 GitHub Copilot 云代理的 AI 模型”。
对匹配公开代码的引用
在聊天响应和代理会话中 GitHub.com, Copilot 可以生成与公共存储库中的代码匹配的代码。 代码引用可帮助你查看匹配的代码及其许可信息,以便你可以决定是否使用它、提供归属或删除它。
匹配项显示在正在查看输出的上下文中:
- 聊天响应:如果你或你的组织允许与公共代码匹配的建议,则响应中的匹配代码包括建议下方的引用。 如果找到了,参考信息将标识包含匹配代码和许可信息的公共代码库。
- 代理会话日志:当Copilot在委托任务期间生成匹配代码时,会话日志包括指向匹配代码详细信息的链接。
匹配很少发生,因此大多数响应不包含代码引用。 搜索涵盖在 GitHub.com 上的公共存储库索引,而不包括专用存储库或托管在其他位置的代码。 索引会定期刷新,因此它可能会省略最近添加的代码或引用后来已被移动或删除的代码。
有关查看引用的说明,请参阅 查找与 GitHub Copilot 建议匹配的公共代码。
访问和可用性
可用功能取决于您的订阅计划和组织策略。 有关设置指南,请参阅 设置 Copilot。 有关使用津贴和成本,请参阅 GitHub Copilot计费和使用情况。
存储库所有者和管理员可以针对特定存储库禁用 Copilot cloud agent ,即使你的计划和策略允许你使用它。 请参阅“管理对 GitHub Copilot 云代理的访问权限”。
限制和兼容性
在 GitHub.com 上的聊天和代理式体验都可能生成不正确或欠佳的代码,包括包含安全漏洞的代码。 在生产环境中使用它之前,请查看并测试输出。 请参阅“应用卡片:GitHub Copilot 智能体”。
有关内置安全保护的信息,请参阅 GitHub Copilot 云代理的风险和缓解措施。
智能体工作
Copilot cloud agent 具有以下工作流限制:
-
存储库范围: Copilot 只能在启动任务时指定的存储库中进行更改。 它无法在一次运行中跨多个存储库进行更改。
-
上下文访问:默认情况下,GitHub MCP 服务器仅提供对代理正在工作的存储库中的上下文的访问权限,例如问题和以前的拉取请求。 可以通过存储库 MCP 设置配置更广泛的访问权限。 请参阅“为存储库配置 MCP 服务器”。
-
分支和拉取请求: Copilot 一次只能处理一个分支,每个任务只能打开一个拉取请求。
-
会话持续时间:每个 Copilot cloud agent 会话的最大执行时间为 59 分钟。 无法扩展或绕过此限制。 如果任务超出限制,会话超时并停止。
将复杂任务分解为较小且更明确的任务。 您可以在
timeout-minutes文件中使用copilot-setup-steps.yml设置来配置较短的超时时间。 请参阅“配置开发环境”。
存储库兼容性
- 仓库规则:如果规则集或分支保护规则与 Copilot cloud agent 不兼容,则将无法访问该代理。 例如,仅允许特定提交作者的规则可以阻止 Copilot 创建或更新拉取请求。 如果使用规则集配置规则,存储库管理员可以添加 Copilot 作为绕过参与者以启用访问。 请参阅“创建存储库的规则集”。
- 存储库托管:Copilot cloud agent 仅适用于在 GitHub 上托管的存储库。 它无法在存储于其他代码托管平台上的存储库上运行。
延伸阅读
- GitHub Copilot 上 GitHub
- GitHub Copilot云代理操作指南
- GitHub Copilot 指南
- 有关从 Microsoft Teams 和 Slack 等工具分派工作,请参阅 关于 Copilot 集成。
- 有关拉取请求创建、合并和合并时间的组织和企业指标,请参阅 GitHub Copilot使用情况指标。