跳至主要内容

关于远程访问 GitHub Copilot CLI 会话

从 GitHub.com 或 GitHub Mobile 访问正在运行的 Copilot CLI 会话,以在您离开运行该会话的机器时监控并引导该会话。

本文阐述了 Copilot CLI 会话远程访问的概念。如需了解如何启用远程访问,请参见 从其他设备引导 GitHub Copilot CLI 会话

简介

当您在本地机器上启动 GitHub Copilot CLI 会话时,默认只能在启动该会话的终端中访问。但您可以从 GitHub.com 和 GitHub Mobile 启用远程访问,从而查看 Copilot 正在处理的任务进度,并对更多信息的提示或权限请求作出响应。

这在以下情形中很有用:

  • 离开工作站:您在笔记本电脑上启动了会话,然后被叫走,或者您已经结束当天的工作,但仍想继续与 Copilot 交互,而无须返回机器。

  • 监控长时间运行的任务:您启动了一个需要较长时间完成的复杂任务,但未授予 Copilot 完全执行所有操作的权限。您需要定期评估并响应权限请求,以允许任务继续进行。

    为确保远程访问功能的稳定性,传递到远程界面的会话输出大小限制为 60 MB。因此,生成大量输出的超长会话可能在远程界面中出现性能下降。本地终端会话不受影响。

  • 从移动设备快速访问:您现在正在处理其他事务,但使用 GitHub Mobile 以一目了然的方式查看在 Copilot CLI 中启动的任务进度。

注意

  • Copilot CLI 会话的远程访问目前处于公开预览阶段,可能会有变动。
  • 移动访问目前仅在 GitHub Mobile 的最新 beta 版中可用。您可以通过 Apple TestFlight(iOS)Google Play(Android) 加入 GitHub Mobile 测试计划。

先决条件

远程访问需要

  • 策略启用:对于拥有组织提供的 Copilot 帐号的用户,远程访问受组织和企业层面设置的策略管控。默认情况下 “Remote Control” 策略为关闭,但可由企业或组织所有者启用。参见 管理远程访问
  • GitHub 仓库:您启动 CLI 的工作目录必须包含托管在 GitHub.com 上的 Git 仓库。如果您尝试在非 GitHub 仓库中启用远程访问,CLI 将显示信息:“Remote session disabled: not in a GitHub repository”
  • 机器必须在线:CLI 会话必须在具有网络连接的机器的终端中持续运行。如机器进入睡眠或失去网络连接,远程访问将不可用,直至机器重新上线。详见本文后面的 重新连接
  • 交互式会话:远程访问仅适用于交互式会话。当您使用 --prompt 命令行选项以编程方式使用 CLI 时(例如在脚本中使用 CLI),则不可用。

远程访问会话

当您为 Copilot CLI 会话启用远程访问后,可前往 GitHub.com 或 GitHub Mobile,并在最近的代理会话列表中找到该会话。远程界面实时更新,您可以监控会话的持续输出,并在提示和权限请求出现时作出响应。

本地终端和远程界面同时保持激活。您可以在任一界面输入命令。Copilot CLI 将使用首次收到的对任何提示或权限请求的响应。

会话仍在本地机器上运行。远程界面提供了与会话交互的方式,但 CLI 本身以及其运行的所有工具、shell 命令和文件操作仍位于启动会话的机器上。

您可以远程执行的操作

当从 GitHub.com 或 GitHub Mobile 远程连接到会话时,您可以

  • 响应权限请求:批准或拒绝工具、文件路径和 URL 的权限请求。
  • 响应问题:在 Copilot 要求您提供更多信息或作出决定时进行回答。
  • 批准或拒绝计划:当 Copilot 处于计划模式时,响应计划批准提示。
  • 提交新提示:输入问题或指令,就像在终端中一样。
  • 切换模式:更改会话模式,例如在交互式和计划模式之间切换。
  • 结束当前操作:取消代理的当前工作。

注意

斜杠命令(例如 /allow-all)目前无法从远程界面使用。

重新连接

如果本地机器与 GitHub 之间的连接暂时中断——例如网络中断——您可以在连接恢复后立即继续远程使用会话。

您可以使用 /keep-alive 斜杠命令来防止机器进入睡眠。参见 防止机器进入睡眠

如果您关闭了已启用远程访问的会话,恢复会话时——无论使用 copilot --continue 还是 copilot --resume=ID——都必须重新启用远程访问。更多信息请参见 从其他设备引导 GitHub Copilot CLI 会话

远程访问会话的可见性

远程访问仅对您本人可用——即使用与启动 CLI 会话相同的 GitHub 账户登录的用户。其他人无法远程查看或交互您的会话。

注意事项

启用远程访问时

  • 会话事件会从本地机器发送到 GitHub。包括对话消息、工具执行事件和权限请求。
  • Copilot CLI 会从 GitHub 轮询远程指令并注入到本地会话中。
  • CLI 本身仍在本地运行。所有 shell 命令、文件操作和工具执行都在您的机器上进行——远程访问不会提供除 CLI 代理在会话中能够执行的操作之外的任何直接本机访问权限。

远程会话链接(启用远程访问时在 CLI 中显示)指向 GitHub.com 上的特定会话 URL。只有使用正确账户进行身份验证的用户才能访问此 URL。

管理远程访问

用户是否能够为其 Copilot CLI 会话启用远程访问,可由企业或组织设置中的策略进行管控。如果在组织或企业层面禁用,来自该组织的 Copilot 用户将无法使用远程访问。

“Remote Control” 策略默认关闭,必须由企业或组织所有者启用后,用户才能开始远程监控并引导其 CLI 会话。

有关为企业或组织设置策略的更多信息,请参见 管理组织中 GitHub Copilot 的策略和功能为您的企业管理 Copilot CLI

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