加载中

为长时间任务在云端会话与远程控制之间做出选择

一个长时间运行的 Claude Code 任务,可以在您离开电脑后继续进行——通过远程控制在您自己的 计算机上运行,或者在云端会话中运行。比较一下两者各自能为您提供什么、又在哪里止步,然后用 几个问题为某个任务做出选择,并说明原因。

10 分钟Claude Code

一个长时间运行的 Claude Code 任务常常会超出您在电脑前的时间。假设 Claude 在您的终端里已经进行了一个小时的重构工作,而这时您必须离开。工作还没有完成,Claude 在继续之前可能仍需要您做出决定。

远程控制和云端会话是在您离开时让工作继续进行的两种方式。使用远程控制时,会话继续在您的计算机上运行,您可以从手机或浏览器来操控它。云端会话则在云端基础设施上运行,而不是在您的计算机上运行。哪一种合适取决于任务本身,几个关于任务的问题就能确定答案。

必须比本地会话存活更久的长时间任务

在本地会话中,一切都发生在一个终端里。Claude 在那里运行,在您的计算机上,您也在那里查看它的进度并回答它的问题。像跨越几十个文件的重构这样的长时间任务,可能要运行数小时,而您不可能一直坐在那个终端前。

要让这样的任务完成,工作必须在您离开后继续运行。您还需要一种方法,能从别处查看进度并回复 Claude。远程控制和云端会话都能让您从手机或浏览器进行查看。它们的区别在于工作运行的位置,而这决定了您不在时 Claude 能够访问什么。

您从 Claude 那里得到的结果,主要取决于您提供给它的东西。在短时间任务中,您会立刻注意到缺少的文件或工具,并把它补上。在长时间任务中,Claude 会用它能够接触到的一切,持续工作数小时。所以在打磨提示的措辞之前,先问一问 Claude 完成任务需要什么,以及这些东西在哪里。

各自能为您提供什么,又在哪里止步

关键的区别在于会话运行的位置。使用远程控制时,Claude 始终在本地运行,网页和移动端界面只是通向那个本地会话的一扇窗口。使用云端会话时,工作在云端虚拟机中运行,该虚拟机从您代码仓库的一个全新克隆启动。

为了形象地理解这种区别,可以想象有位同事在晚上接手您的工作。使用远程控制时,他们坐在您的办公桌前,而您通过电话远程指挥。他们可以打开每一个抽屉,但如果办公室关门,他们也只能停下。使用云端会话时,他们在另一间始终开放的办公室工作,手头只有您发送给他们的那个文件夹。

两个面板布局相同。在两者中,您都通过手机或浏览器来操控。远程控制:Claude 在您的计算机上运行,能够访问您的文件系统、MCP 服务器和工具。您的计算机必须保持开机。云端会话:Claude 在云端虚拟机中运行,该虚拟机从您在 GitHub 上的代码仓库的一个全新克隆启动。只存在于您计算机上的内容在那里无法使用。即使您合上笔记本电脑,它也会继续运行。

使用远程控制时,Claude 在您的计算机上运行,能够访问您的本地环境。云端会话则在云端虚拟机中运行,该虚拟机从您代码仓库的一个全新克隆启动。

各自能为您提供什么

会话运行的位置决定了 Claude 能够访问什么,以及您合上笔记本电脑后会发生什么。

远程控制云端会话
Claude 能够访问什么您的完整本地环境。您的文件系统、MCP 服务器、工具和项目配置都始终可用。您已提交到代码仓库中的一切,包括仓库的 CLAUDE.md。
当您的笔记本电脑休眠或合上时Claude Code 会在您的计算机重新联网后自动重新连接。会话继续运行,您可以从任何设备上查看进度或进行操控。
最适合您正在进行本地工作,并希望从另一台设备继续下去。您想在没有任何本地配置的情况下启动任务、在尚未克隆的代码仓库上工作,或并行运行多个任务。

各自在哪里止步

二者都只有在满足特定条件时才能继续工作。

远程控制云端会话
依赖什么您的计算机必须保持开机,并且 claude 进程必须持续运行。GitHub。在 Anthropic 托管环境中克隆代码仓库和创建拉取请求都需要用到它。
什么会使其停止如果您关闭终端或停止 claude 进程,会话就会离线。它会在一段闲置时间后停止,其虚拟机也会被回收。重新打开会话会恢复您的对话历史,但仍在运行的后台工作会丢失。
谁可以使用Pro、Max、Ultra、Team 和 Enterprise 套餐。不支持 API 密钥。在 Team 和 Enterprise 套餐中,必须先由 Owner 在 Claude Code 管理员设置中启用远程控制开关。Pro、Max、Ultra 和 Team 套餐,以及拥有高级席位或 Chat + Claude Code 席位的 Enterprise 用户。

云端会话还有一个额外的限制,来自于那个全新克隆。只存在于您计算机上的东西都会被留下。在选择云端会话之前,请留意以下这些内容:

  • 未提交的更改以及您还未推送的本地提交。从终端启动时,云端虚拟机会克隆您当前目录所对应的 GitHub 远程仓库在当前分支上的内容。它不会复制您的本地检出内容,所以请先推送。如果代码仓库没有 git 远程地址,或者其上没有安装 Claude GitHub App,Claude Code 会改为上传您的本地代码仓库。
  • 您在本地或用户范围添加的 MCP 服务器,这些服务器保存在您计算机上的 ~/.claude.json 中。
  • 诸如 AWS SSO 这样的交互式登录。它需要基于浏览器的登录方式,而这无法在云端会话中运行。
  • 云端虚拟机不被允许调用的服务。默认情况下,网络访问是受限的。

要弥补这一差距,请推送您的提交,并将您自己的配置提交到代码仓库。完整列表:有哪些内容会从您的设置中继承过来 涵盖了其余内容。

决定选择的几个问题

针对您的任务问一问这些问题,然后选择您"是"的答案所指向的那个选项。

  1. 工作是否已经在某个终端会话中进行?答案是"是"则指向远程控制。在该会话中运行 /remote-control,即可从手机或浏览器继续该会话。从终端里,您无法把一个已有的会话推送到云端。

  2. 任务是否需要某个只存在于您计算机上的东西?答案是"是"则指向远程控制,因为它能让您的完整本地环境始终可用。

  3. 您是否必须在任务完成前关闭或关机您的计算机?答案是"是"则指向云端会话,因为即使您合上笔记本电脑,它也会继续运行。

  4. 您是否想同时进行多个任务,或者在一个尚未克隆的代码仓库上进行任务?答案是"是"则指向云端会话。它不需要任何本地配置,您还可以并行运行多个任务。

如果任务需要您计算机上的某样东西,而您的计算机又不能保持开机,那么这两个选项目前都不合适。如果它需要的是代码或配置,就把它推送到代码仓库,使用云端会话。如果是笔记本电脑上的数据库或交互式登录,就想办法让计算机保持开机。

如果工作正在某个终端中进行,而您的计算机必须关闭,就先推送已完成的部分。然后启动一个新的云端会话,并描述剩下的工作。

离开前检查您的选择

用可能让它停止运行的因素来检验您的选择。对于远程控制,先确保计算机会保持开机,然后在 Claude 应用的 Code 标签页中打开会话。对于云端会话,先运行 git status,推送任务所需的内容,然后用 claude --cloud 加上任务描述来启动会话。

为以下任务做出选择

针对下面的每个长时间任务,找出在远程控制和云端会话之间做出决定的那句话,然后选择它所指向的选项。做出选择后,您会看到那句起决定作用的话,以及与之匹配的选项和原因。

起决定作用的那句话,陈述的是上面某个问题所询问的事实。一句在两个选项下都成立的话,起不到任何决定作用。例如,无论选择哪一种,您都可以从手机上操控工作。

加载中

需要记住的内容

远程控制把工作留在您的计算机上,而云端会话则在云端虚拟机中运行它,该虚拟机从您代码仓库的一个全新克隆启动。

当工作已经在您的计算机上进行,或者它需要某个只有您的计算机才有的东西时,选择远程控制。您的计算机必须保持开机,并且 claude 进程必须持续运行。

当任务所需的一切都在您的 GitHub 代码仓库中,而您的计算机又不能保持开机时,选择云端会话。当您想同时进行多个任务,或者在一个尚未克隆的代码仓库上进行任务时,它同样合适。

在让任何长时间任务持续运行之前,列出 Claude 完成它所需要的东西,并检查每样东西的位置。对于任何您交给 Claude 而不打算一直盯着的工作,也要这样做。

要设置其中之一,请参阅远程控制指南或云端会话快速入门。

下面每个人都为一个长时间任务做出了选择。请说说接下来会发生什么。

快速检测

Priya 最近的三次提交都在她的笔记本电脑上,她还没有把它们推送到她的 GitHub 代码仓库(该仓库已经安装了 Claude GitHub App)。她希望在参加会议期间,让 Claude 为那部分工作编写测试。她从终端启动了一个云端会话,然后合上了笔记本电脑。她会遇到什么问题?

快速检测

Claude 正在 Sam 的台式电脑上的一个终端里,根据 300 个已合并的拉取请求起草发布说明。Sam 开启了远程控制。在离开之前,他退出了终端应用,但让计算机保持开机。在火车上,他打开 Claude 应用查看工作进度。他会看到什么?

快速检测

Nina 的云端会话在后台启动了一次长时间的测试运行。随后,会话在一段闲置时间后停止了,而此时测试运行仍在进行中。后来,Nina 重新打开了这个会话。她会看到什么?