跳至主要内容

从另一台设备控制 GitHub Copilot CLI 会话

为 Copilot CLI 会话启用远程访问,以便您可以监控进度、响应提示,并从 GitHub.com 或 GitHub Mobile 继续工作。

远程访问允许您通过任何浏览器或 GitHub Mobile 连接到正在运行的 Copilot CLI 会话。您可以查看会话输出、响应权限请求,并在不在运行会话的机器前的情况下继续工作。

本文介绍了如何启用和使用远程访问。欲了解更多概念性信息,请参阅 关于 GitHub Copilot CLI 会话的远程访问

注意

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

先决条件

  • 运行 CLI 会话的机器必须保持在线,并且会话正在终端中主动运行。

    提示

    使用 /keep-alive 斜杠命令可在您离开时防止机器进入睡眠状态。参见 防止机器进入睡眠状态

  • 工作目录必须包含托管在 GitHub.com 上的 Git 仓库。如果您不在 GitHub 仓库中,CLI 会显示:“Remote session disabled: not in a GitHub repository”。

为会话启用远程访问

您可以通过三种方式启用远程访问

  • 在交互式会话期间使用斜杠命令。
  • 在启动 Copilot CLI 时使用命令行选项。
  • 通过配置 CLI,使所有交互式会话默认启用远程访问。

使用 /remote 斜杠命令

如果您已处于交互式会话并想启用远程访问,请输入

Copilot 提示
/remote

CLI 会连接到 GitHub.com 并显示远程访问会话的详细信息——请参阅本文后面的 从 GitHub.com 访问会话从 GitHub Mobile 访问会话

使用 --remote 命令行选项

如果您可能需要远程访问会话,可以在启动 CLI 时使用 --remote 命令行选项。这样就无需在会话期间记得使用 /remote 斜杠命令。

Bash
copilot --remote

远程访问会话的详细信息会在交互式会话启动时显示,并且可以随时使用 /remote 斜杠命令再次显示。

配置始终启用远程访问

如果您想让所有交互式 CLI 会话始终可远程访问,请在 Copilot 配置文件(通常位于 ~/.copilot/config.json)中添加以下内容

JSON
{
  "remoteSessions": true
}

若要为特定会话覆盖此设置,可在启动会话时使用 --no-remote 选项。

Bash
copilot --no-remote

注意

命令行选项 --remote--no-remote 始终优先于配置文件中的 remoteSessions 设置。

从 GitHub.com 访问会话

启用远程访问后,CLI 会以如下格式显示链接

https://github.com/OWNER/REPO/tasks/TASK_ID

使用此链接可在网页浏览器中访问会话。您必须使用启动 CLI 会话的相同账号登录 GitHub。

您也可以从 GitHub.com 上的“最近的代理会话”列表中访问该会话。

  1. 在 GitHub 左上角,点击.
  2. 点击 Copilot
  3. 在“最近的代理会话”下,点击您的 Copilot CLI 会话将其打开。

重要提示

会话是基于用户的:您只能访问您自己的 Copilot CLI 会话。其他 GitHub 用户无法访问您的会话。

从 GitHub Mobile 访问会话

在启用远程访问后,Copilot CLI 会话即可在 GitHub Mobile 中使用。要在 GitHub Mobile 中找到您的会话,请

  1. 轻点屏幕右下角的 Copilot 按钮。

    该会话列在“代理会话”下。

  2. 轻点该会话以打开它。

使用二维码快速在手机上打开会话

  1. 在交互式会话中,输入 /remote 斜杠命令以重新显示远程会话详情。

  2. Ctrl+E 切换二维码的显示/隐藏。

    注意

    此键盘快捷键会展开/折叠会话对话中的所有细节,而不仅仅是二维码。仅当输入框当前为空时才会生效。

  3. 使用手机扫描二维码,可直接在 GitHub Mobile 中打开会话。

防止机器进入睡眠状态

您可以使用 /keep-alive 斜杠命令来防止机器进入睡眠状态。这样可保持远程连接,并继续从 GitHub.com 或 GitHub Mobile 与会话交互。

在交互式会话中,输入 /keep-alive OPTION,其中 OPTION 为以下之一

  • on:在 CLI 会话活动期间防止机器进入睡眠状态。
  • off:允许机器正常进入睡眠。
  • busy:仅在 Copilot 正在执行任务时阻止机器进入睡眠。任务完成后,机器可正常进入睡眠。如果 Copilot 正在等待您对输入请求作出响应,机器也不会进入睡眠。
  • NUMBERmNUMBERhNUMBERd(例如 30m8h1d):在指定的分钟、小时或天数内防止机器进入睡眠。如果只提供数字而没有后缀,则默认视为分钟。

如果不提供 OPTION/keep-alive 命令将显示当前的保持活动状态。

使用远程访问恢复会话

当您关闭已启用远程访问的会话时,CLI 会显示包含 --remote 的恢复命令。

copilot --resume=SESSION_ID --remote

使用此命令可在启用远程访问的情况下重新启动会话。

同样,将 --remote 添加到 copilot --continue 命令,可恢复最近的会话并启用远程访问。

如果在 Copilot 配置文件中设置了 "remoteSessions": true,恢复的会话将自动启用远程访问,无需使用 --remote 选项。

阻止远程访问

默认情况下远程访问是禁用的,但可能在您的 Copilot 配置文件中被启用。您可以通过以下方式确保会话不可远程访问:

  • 针对单个会话:使用 --no-remote 启动 CLI,以防止该会话的远程访问,无论配置文件设置如何。
  • 永久性地:从 Copilot 配置文件中删除 "remoteSessions": true 设置(或将其设为 false)。
© . This site is unofficial and not affiliated with GitHub, Inc.