本文介绍有关远程控制 Copilot 命令行界面(CLI) 会话的概念。 有关如何启用远程控制的说明,请参阅 通过其他设备控制 GitHub Copilot 命令行界面 (CLI) 会话。
当远程控制派上用场时
默认情况下, GitHub Copilot 命令行界面 (CLI) 会话只能从本地计算机进行引导。 但是,可以启用会话的远程控制。 当想要查看进度或响应提示和权限请求时,远程控制非常有用,而无需保留在运行会话的计算机。 例如:
- 你离开工作站:继续与手机或其他设备进行交互 Copilot ,而无需返回到运行会话的计算机。
- 长时间运行的任务需要您的参与:及时批准权限请求和回答问题,以避免在您离开时任务受到阻碍。
- 需要快速状态检查:查看会话进度 GitHub Mobile ,同时处理其他内容。
Prerequisites
远程控制需要:
- 策略启用:如果 Copilot 席位来自组织,企业或组织所有者必须启用“远程控制”策略(默认关闭)。 请参阅本文后面的 管理远程控制 。
- 计算机必须处于联机状态:CLI 会话必须在具有 Internet 连接的计算机上的终端中主动运行。 如果计算机进入睡眠状态或失去连接,远程控制将不可用,直到计算机重新联机。 请参阅本文后面的 重新连接 。
- 交互式会话:远程访问仅适用于交互式会话。 以编程方式使用
--prompt命令行选项时不可用,例如在脚本中使用 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 恢复启用了远程控制的 CLI 会话时,会自动重新启用远程控制。
安全和隐私
远程控制仅供你使用 — 使用启动 CLI 会话的同一帐户登录 GitHub 的人员。 其他人无法远程查看或与会话交互。 CLI 中显示的会话 URL 特定于会话,只有经过身份验证的用户才能使用正确的帐户访问。
启用远程控制时:
- 会话事件(会话消息、工具执行事件和权限请求)从本地计算机发送到 GitHub。
- 远程命令由 Copilot 命令行界面(CLI) 轮询,并注入到 GitHub 的本地会话中。
- CLI 将继续在本地运行 — 所有的 shell 命令、文件操作和工具执行都发生在您的计算机上。 远程控制不会授予对机器的直接访问权限,除了通过 CLI 代理可在会话中进行的操作。
远程会话链接(启用远程控制时显示在 CLI 中)指向会话特定的 URL GitHub.com。 只有具有正确帐户的经过身份验证的用户才能访问此 URL。
管理远程控制
企业和组织所有者使用“远程控制”策略控制用户是否可以启用远程控制。 此策略默认处于关闭状态。
有关详细信息,请参阅 管理组织中GitHub Copilot的策略和功能 和 为企业管理 Copilot CLI。