跳到正文
北京时间
原文
Anthropic:Claude.dev 开发者博客· Addy Osmani·· 5 小时前精选AI 评分82

Claude Code 云端会话实战指南:每个任务独占一台 VM,可并行跑任务并以分支收尾

Claude Code in the cloud: a field guide to cloud sessions

AI 导读

Claude Code 推出云端会话:每个任务在独立 VM 上运行,仓库克隆到新分支,可从 claude.ai/code、手机、Desktop、终端和 Slack 启动并跟踪,完成后产出可转 PR 的分支,Pro、Max、Team、Enterprise 计划不额外收费。

推荐理由

作者用四个真实云会话实测并行修复、文档校对和结构化日志,给出本地与云会话的选择边界和七个适用工作流。

正文 · AI 翻译

你可能在自己的笔记本电脑上的终端里运行 Claude Code。该会话在三个方面依赖于这台笔记本电脑:

  • 它共享你的工作树,因此同一仓库上的两个会话可能会编辑相同的文件,并争用同一个端口。
  • 它使用你的凭据运行。
  • 当你的电脑休眠或 Wi-Fi 断开时,它就会停止。

云端会话在它自己的机器上运行 Claude Code。每个任务都会获得一台全新的虚拟机,你的仓库被克隆到一个新分支上,并且你的环境设置已经完成。

你可以从 claude.ai/code、Claude 移动应用、桌面应用、你的终端以及 Slack 启动一个会话。然后你可以在浏览器、移动应用和桌面应用中跟进它。工作完成后,它会留在一个分支上,你可以将其变成拉取请求。

云端会话随你的 Pro、Max、Team 或 Enterprise 套餐提供,无需额外费用:云端机器不单独收费,会话使用的用量限制与 Claude Code 其余部分相同。根据你的套餐,组织所有者可能需要先开启云端会话。

云端会话奖励额度。现有的个人 Pro 和 Max 订阅者可以在其套餐限制之外,领取一次性的云端会话奖励额度:Pro 为 100 美元,Max 为 250 美元。请在 10 月 7 日前通过 claude.ai/code/claim-credit 或在 Claude Code 中使用 /claim-credit 领取。该额度将于 11 月 4 日过期。在使用完或过期后,将适用你套餐的常规用量。它不适用于 Projects 或 Routines。请参阅促销额度优惠条款。

在本指南中,我针对一个小型示例仓库运行了四个真实的云端会话。它们的记录、差异和耗时贯穿全文。仓库和截图中的用户是虚构的。工作、输出和数字均来自这些会话。

云端会话的主要优势之一是你可以同时运行多个任务,而它们不会相互干扰。以下是我在 16 秒内启动的三个任务,每个都在自己的机器上运行。在我的笔记本电脑上,我本会一个接一个地运行它们,或者把时间花在让它们互不干扰上。

Timeline of three cloud sessions in three VMs, started within 16 seconds of each other. After a hatched setup bar, the flaky-test fix finishes at 65 seconds with the suite run 40 times and 0 failures, the docs rewrite at 62 seconds with 5 doc errors fixed, and the structured-logging change at 87 seconds with JSON logs and 5 new tests.

图 A同一仓库上三个云端会话的真实时间线,以从第一个启动开始的秒数计。阴影条是重建示例仓库的设置步骤(正常使用时由 GitHub 克隆替代),每个点是一次工具调用。

三个任务,一个仓库,三台机器

示例仓库是 tidepool,一个小型 Node API,用于预测三个虚构港口的潮汐。它有三个普通问题:一个测试大约每四次运行失败一次,API 文档描述的参数代码已不再读取,以及日志记录器通过拼接字符串来构建其行。

我在 16 秒内启动了三个云端会话,每个问题一个。我以编程方式启动它们,由于 tidepool 不在 GitHub 上,每个会话首先根据其提示中的文件重建仓库。对于真实仓库,你会跳过这一步,而从终端启动时,每个会话就是一条 claude --cloud 命令。简而言之,这三个提示是:

CODEShell

claude --cloud "npm test fails maybe one run in four. Find the flaky test, fix the root cause in the code (not the test), and prove it by running the suite at least 30 times in a row."
claude --cloud "docs/API.md is out of date with src/server.js. Rewrite it so every endpoint, parameter, default and response shape matches the code. Start the server and run each curl example to check it."
claude --cloud "Make src/logger.js emit one JSON object per line, keep LOG_LEVEL, and log method, path, status and duration_ms as fields. Add a test for the logger."

这些会话分别运行了 61、65 和 72 秒,三个会话都在第一个启动后 87 秒内完成。重建仓库大约占每次运行的三分之一到一半多一点。以下是结果。

  • 不稳定的测试。Claude 在 TtlCache.get 中发现了一个竞态条件。缓存只在加载器完成后才存储值,因此在加载过程中对同一键的第二次 get 会再次调用加载器。Claude 修改缓存以存储进行中的 promise,在加载失败时删除该条目,并连续运行 npm test 40 次,零失败。
  • 文档。Claude 启动了服务器,对每个端点运行了 curl,并发现了旧文档错误的五种方式。它列出了 API 从不返回的字段,记录了一个代码忽略的 days 参数,将高度以英尺为单位给出而实际是米,跳过了 /next-high 端点,并遗漏了错误响应。它还发现格式错误的 from= 值会返回空列表和 200 状态码,并将其记录为注意事项,而不是修改未被要求触碰的服务器代码。
  • 日志记录器。Claude 编写了 JSON 日志记录器,将请求日志移至结构化字段,并添加了五个测试。它的提交带着一个失败的测试进入,因此 Claude 重新运行缓存测试八次,看到其中五次失败,并将失败追溯到第一个会话正在修复的同一竞态条件。它提出了相同的修复方案,但没有改动缓存,因为这超出了它的任务范围,并在总结中说明测试套件并不干净。
图 E同一本地构建的 20 秒录屏:在三个会话之间点击,然后滚动日志记录器会话的记录

日志记录器的结果显示了为什么云会话适合并行工作。每个会话都有自己的仓库副本、自己的进程和自己的分支。文档会话和日志记录器会话各自启动了 API 服务器进行测试,彼此互不影响。在单台笔记本电脑上,两个代理在同一个检出中工作会编辑相同的文件,并且会在端口上冲突,除非各自选择自己的端口。

由于这种隔离,日志记录器会话无法访问第一个会话正在进行的缓存修复。沿着文件边界拆分并行任务,以合理的顺序合并分支,并预期某个会话会报告另一个会话正在修复的问题。

CLAUDE CODE 云会话的内部机制

云会话是在 Anthropic 管理的基础设施上运行的 Claude Code 会话,或者在你组织自己的机器上使用 自托管环境 运行。图中展示了各个部分。其后的四个要点是改变你工作方式的关键。

You start a session from a browser, phone, Desktop, terminal, Slack or a routine. It runs in a fresh VM with a clone of your repository on a claude branch, Claude Code in auto mode, and your environment's setup. GitHub traffic passes through a proxy that holds your token outside the VM; other traffic passes through a security proxy that applies the network allowlist. The result is a branch and a pull request.
图 F云会话的剖析。代理可以触及的一切都位于 VM 内部。你的 GitHub 令牌和网络策略位于其外部。
  • 每个任务都有自己的机器。一个全新的 VM,你的仓库被克隆到一个新分支上,因此会话无法触碰彼此的文件或端口。参见 已安装的内容。
  • 你的 GitHub 令牌永远不会进入 VM。代理持有它,会话获得一个短期凭证,只能推送到自己的工作分支。参见 GitHub 代理。
  • 仓库的 Claude 配置会随之而来。你的个人配置则不会。CLAUDE.md、规则、技能、代理和命令随仓库一起传输,而你的 ~/.claude 留在你的笔记本电脑上。参见 云会话中的设置。
  • 空闲的 VM 会被回收。重新打开会话,你会获得一个全新的 VM,对话已恢复,因此请提交你在意的工作。参见 环境过期。

有关规格、权限模式 和网络级别,请参阅 云环境文档。

本地还是云端?

云端会话不会取代本地会话,大多数人两者都会用。下表展示了它们的差异,表后的段落说明了各自适用的场景。

本地会话云端会话
运行于你的机器每个任务一台全新 VM
笔记本休眠或离线会话停止会话继续运行
同一仓库上的多个任务独立的工作树、端口,需谨慎处理每个任务一个 VM 和一个分支
智能体可访问的范围你的用户账户能访问的一切,包括 SSH 密钥、云 CLI 和 ~/.claude仓库、你设定的网络级别、你启用的连接器,以及会话作用域的 GitHub 凭据
启动或跟进方式那台机器,或通过远程控制用你的手机浏览器、手机、Desktop、终端、Slack、API 调用或定时任务
审批任意模式,包括逐命令审批自动、接受编辑或计划
结束时你的工作树中的变更一个分支,以及你需要时的一个拉取请求
算力你的机器无单独的算力费用;使用你套餐的额度

当任务需要只有你的机器才具备的东西时,就留在本地。这包括带有真实本地数据的数据库、通过 VPN 访问的服务、GPU、手机模拟器,或你桌上的硬件。对于紧凑的视觉循环——你希望在自己浏览器中几秒内看到每次变更——也留在本地,以及当你的组织采用 零数据保留(会关闭云端会话)时。

有两个功能介于两种选择之间。远程控制让会话留在你的机器上,并让你从手机或浏览器操控它。自托管环境(Team 和 Enterprise 版测试中)在你组织自己的基础设施上运行云端会话,因此它们可以访问私有网络。

如果以上都不适用,那么该任务就是云端的良好候选。下一节介绍最能从中获益的工作流。

适合云端会话的七种工作流

这些工作流充分利用了表中的差异:每个任务一台独立机器、你离开时仍在运行的会话,以及结束时供你审查的分支。

1. 并行清理积压任务

假设你有五个互不相关的小修复。在本地,你要一个接一个地做,或者设置五个工作树并让它们的端口和安装互不干扰。在云端,你可以启动五个会话并审查五个分支。

CODEShell

claude --cloud "Fix the flaky test in auth.spec.ts"
claude --cloud "Update the API documentation"
claude --cloud "Refactor the logger to use structured output"

claude --cloud 会在你当前分支克隆你的 GitHub 远程仓库,所以请先推送你的本地提交。在 VM 启动期间,CLI 会显示设置步骤的实时清单,并将你输入的任何内容排队。

把每个任务写成一个自包含的工单,说明哪里有问题、完成是什么样,以及如何证明。那个不稳定测试的提示词说明了它的证明方式:连续运行测试套件至少 30 次。该会话运行了 40 次。

当这些任务属于同一个更大的工作时,一个 项目(Pro 和 Max 版公开测试中)会运行一个协调者对话,为你启动并跟踪云端会话。然后它按状态将它们分组:进行中、等待你处理,以及可供审查。

2. 让它证明修复

不稳定测试是最需要反复证明的工作的典型例子:你必须一遍又一遍地运行测试套件,而你不希望这个循环占用你正在使用的机器。在云端,Claude 修补了缓存,并在一条命令中运行了整个测试套件 40 次。

The flaky-test session's Bash step: a patch to src/cache.js that caches the in-flight promise, then a loop running the test suite 40 times, with output runs=40 fails=0.
FIG G四十次运行,零失败:flaky-test 会话的真实命令和输出,在本地运行的 claude.ai/code 界面中重放。Claude 修补了 src/cache.js,并在一步中把整个测试套件循环运行了 40 次。路径显示在 /home/user 下。

虚拟机没有计算费用,其 CPU 也不是你的,所以要求提供充分的证明。把测试套件运行 200 次,在 50 个提交中二分定位一个回归,运行缓慢的集成测试层,或者像文档会话那样启动应用并用 curl 访问它。

Claude 的每一轮仍然计入你的套餐,但在一条命令内进行长时间测试运行的成本很低。前台命令默认在 2 分钟后超时(最多 10 分钟),然后继续在后台运行最多 30 分钟。你可以在环境变量中用 BASH_DEFAULT_TIMEOUT_MS 和 BASH_MAX_TIMEOUT_MS 提高默认值。

3. 在桌面上规划,在云端构建,在终端中收尾

对于较大的改动,先在来回沟通成本低的地方就方案达成一致。以计划模式启动 Claude,一起制定计划,提交计划并推送。

CODEShell

claude --permission-mode plan
# ...agree on the plan, save it to docs/migration-plan.md, commit and push...
claude --cloud "Execute the migration plan in docs/migration-plan.md"

当云端会话在构建时,你的终端可以腾出来做其他工作。完成后,把会话拉取下来手动收尾。

CODEShell

claude --teleport            # pick a cloud session
claude --teleport <session-id>

Teleport 会检查你处于同一个仓库中,获取会话的分支,检出它,并将整个对话加载到你的终端。你需要一个干净的工作树(它会提议暂存),并且分支必须已推送。在 Claude Code 内部,/teleport(或 /tp)会打开同一个选择器,然后 /tasks 再 t 也可以。桌面应用则相反,其 Open in 菜单会把本地会话发送到云端。

4. 从手机端查看进度

Claude 应用中的 Code 标签页连接到相同的会话。你可以从手机启动任务、跟进任务、引导任务、回答 Claude 提出的问题,或让 Claude 关注某个拉取请求。

手机适合处理那些等你坐到键盘前就会忘记的问题。我给第四个会话提了一个你会在手机上输入的那种问题:tidepool 如何预测潮汐,以及在时间窗口的边缘它可能如何出错?它运行代码来验证答案,并发现了一个真实的 bug。该循环从不检查第一个或最后一个样本,因此当高潮恰好落在窗口起点时,API 会漏掉它。

5. 把 CI 失败和审查评论交给 Claude

在仓库上安装 Claude GitHub App 后,云端会话可以关注拉取请求并对其发生的情况采取行动。在 claude.ai/code 的会话中的 CI 栏里,打开 Auto-fix。你也可以在终端中于 PR 分支上运行 /autofix-pr,让移动应用关注该 PR,或将 PR URL 粘贴到会话中。

Claude 会为失败的检查和审查评论推送清晰的修复,并解释它改了什么。对于任何含糊或架构性的问题,它会向你询问。审查线程上的回复会以你的 GitHub 用户名发布,并标注为 Claude Code。Claude 不会收到与基础分支合并冲突的通知,所以请让它 rebase。它的评论还可能触发诸如 Atlantis 之类的评论驱动自动化。

6. 无需自己动手即可开始工作

一个例程(研究预览版)是若干已保存的资源,旨在完成一项任务,例如提示词、代码仓库、连接器和环境。每次运行都是一个云会话,由触发器启动。触发器可以是定时计划(最高频率为每小时一次)、对例程自身端点的 HTTP 调用,或 GitHub 事件(如拉取请求开启或发布)。你可以在 claude.ai/code/routines、桌面应用中创建,或在 CLI 中使用 /schedule 创建。例程运行时无需审批提示,默认情况下会推送到以 claude/ 为前缀的分支。

有两个更小的工具在这里能帮上忙。你可以从任何已登录的机器上,包括 CI 任务中,向正在运行的会话排队追加一条后续消息。

CODEShell

claude -p "The integration tier is green now; rebase on main and push" --cloud <session-id>

你还可以为预填好的会话添加书签。诸如 claude.ai/code?prompt=Triage+the+newest+issues&repositories=acme-labs/tidepool 这样的 URL 会打开 claude.ai/code,并已填好提示词和代码仓库。

7. 运行你并不完全信任的代码

贡献者的拉取请求、新依赖的安装脚本,或你五分钟前克隆的代码仓库,都可能运行你尚未阅读过的代码。在你的笔记本电脑上,这些代码会与你的 SSH 密钥、云 CLI 会话和浏览器配置文件相邻运行。而在云会话中,它运行在一个一次性 VM 里,没有这些东西,只有一个会话范围的 GitHub 凭据,以及一个你可以收窄的网络。

将环境的网络访问设置为 None 可获得最严格的运行,或保持 Trusted,它允许访问包注册表、GitHub 和主要云 SDK 主机。即使在 None 下,Claude Code 仍会向 Anthropic API 发送请求,因此数据仍可能以这种方式离开 VM,并且会话仍可推送到自己的分支。所有出站流量都经过一个记录主机名的代理。

连接 GitHub 而不陷入困境

如果你的第一个云会话出了问题,GitHub 是最可能的原因。大多数问题源于云会话需要两个独立的 GitHub 权限。

  • 使用 GitHub 登录告诉 Claude 你是谁。
  • 在账户或组织上安装 Claude GitHub App设定 Claude 可以在那里看到哪些私有代码仓库。

公共代码仓库仅凭第一项即可使用。私有代码仓库需要第二项,且需安装在拥有它们的账户或组织上。如果你已连接 GitHub 但某个私有代码仓库缺失,通常是因为 App 未安装在拥有它的账户或组织上。

你已连接的内容公共仓库你的私有仓库某组织的私有仓库自动修复、GitHub 触发器、项目
仅使用 GitHub 登录是否否否
+ 在你的个人账户上安装 App是是否你的仓库
+ 在组织上安装 App(所有者批准)是仅当也安装在你的账户上时是组织仓库
/web-setup(你的 gh 令牌)是是你的令牌能访问的任何内容否,需要 App

路径 A:在浏览器中连接(推荐)

在 claude.ai/connect-github 连接你的 GitHub 账户,然后在拥有你代码仓库的账户或组织上安装 Claude GitHub App。对于组织,通常需要所有者批准安装。快速入门会逐步介绍每个步骤。

如果 GitHub 没有把你送回 claude.ai/code,claude.ai/connect-github 上的连接页面可以显示针对常见原因的简短检查清单。其中之一是单点登录步骤,如果你跳过它,组织的代码仓库会被隐藏。

The Didn't finish connecting screen with five tips: sign in to the right GitHub account, authorize each organization on the single sign-on step, start again if you saw GitHub connection not completed, connect your own account first and let an owner approve organization access later, or run /web-setup from the terminal.
图 L如果 GitHub 没有把你送回来:产品自带的检查清单,用于处理中断的 GitHub 连接,来自本地运行的 claude.ai/code 界面中的快速设置引导流程

自动修复、由 GitHub 触发的例程和项目也依赖该 App,所以即使你通过其他方式连接,也要安装它。

路径 B:从终端使用 /web-setup 连接

如果你已经在使用 gh CLI,请在 Claude Code 中运行 /web-setup,将你的 gh token 发送到你的 Claude 账户。之后会话便可访问该 token 能访问的任何仓库,无论是否使用该 App。请参阅 从终端连接 了解完整步骤。在 Team 和 Enterprise 方案中,需要由所有者先开启 快速设置。

路径 C:跳过 GitHub,进行一次性操作

在没有 GitHub 远程仓库、或未安装该 App 的仓库中运行 claude --cloud,Claude Code 会改为上传你的仓库打包文件,而不是克隆它。只有当你的 GitHub 连接对该仓库具有推送权限时,会话才能推送回去。文档中列出了 打包文件包含和不包含的内容。

如果你使用 Team 或 Enterprise

所有者有一份简短的清单:在 claude.ai/admin-settings/connectors 开启 GitHub 连接器,在 Claude Code 管理设置 中允许云会话,在组织的仓库上安装 Claude GitHub App(或批准成员的请求),并决定是否开启 快速设置。使用 IP 允许列表或 GitHub Enterprise Server 的组织还有额外步骤。请参阅关于 IP 允许列表 和 GitHub Enterprise Server 的文档。

当它仍然无法工作时

你看到的现象原因修复方法
选择器中缺少某个私有仓库拥有该仓库的账户或组织未安装该 App,或其仓库访问权限未包含该仓库在那里安装该 App,或将该仓库添加到 GitHub 设置中该 App 的仓库访问权限中
出现错误,提示你必须是该组织的所有者才能将其关联该组织阻止了成员资格检查,通常是因为有待处理的 App 权限请求、IP 允许列表或 SAML 单点登录所有者在该组织的 GitHub App 设置中接受待处理的权限请求,为已安装的 GitHub App 开启 IP 允许列表继承,或(在 SAML 下)授予 Claude 访问该组织的权限
连接后,某个组织的仓库立即缺失该组织使用 SAML 单点登录,而其授权步骤被跳过了在 GitHub 的“单点登录到你的组织”步骤中,继续之前点击每个组织旁边的 Authorize。如果你已经跳过了,请在 GitHub 设置中为该组织授权 Claude,然后重新连接
每个云会话都因身份验证错误而失败你的 Claude 组织使用了 IP 允许列表请支持人员将 Anthropic 托管的服务加入豁免

其他任何情况,请参阅文档中的 故障排除,包括 连接 GitHub 后没有出现任何仓库。要完全断开 GitHub,请使用 claude.ai/customize/connectors。

为会话提供检查自身工作所需的条件

能够运行你的测试的会话会在交回工作之前检查自己的工作。否则,你审查的是没人运行过的更改。本指南演示中的大部分价值来自 Claude 运行各种东西:测试套件运行了 40 次、服务器及其 curl 请求、窗口边缘的潮汐计算。十分钟的环境设置就能让 Claude 有办法运行这些检查。

The Add cloud environment dialog with the name tidepool, Trusted network access, LOG_LEVEL=debug, and a setup script that installs shellcheck with apt-get.
图 M在 claude.ai/code 界面中添加云环境,使用示例值在本地运行:名称、网络访问级别、.env 格式的变量,以及一个设置脚本
  • 从 Default 环境开始。它使用 Trusted 网络访问、无变量、无设置脚本,这对大多数 JavaScript、Python、Go 和 Rust 仓库来说已经足够。
  • 为机器使用设置脚本。它在 Claude Code 启动前以 root 身份运行,因此 apt install 可以正常工作。它必须以 0 退出,否则会话不会启动,并且应在约五分钟内完成,以便环境被缓存。之后,新会话将从磁盘上带有你的工具的快照启动。当你更改脚本或允许的主机时,缓存会重建,大约每七天也会重建一次。
  • 为项目使用 SessionStart 钩子。将 npm install 及类似步骤放入仓库 .claude/settings.json 中的钩子,这样它们在本地和云端以相同方式运行。如果某个步骤只应在云端运行,请检查 CLAUDE_CODE_REMOTE。仓库钩子会在单仓库会话中加载。
  • 按会话启动服务。缓存存储的是文件。之前运行的进程不会在缓存中保留。让 Claude 运行 service postgresql start,或在 SessionStart 钩子中执行。
  • 选择能正常工作的最窄网络级别。Trusted 覆盖常见注册表。使用 Custom 添加私有注册表,仅在任务需要开放互联网时使用 Full。更改会在大约一分钟内到达正在运行的会话。
  • 让密钥远离共享变量。环境变量对任何使用该环境的人都可见。在 Pro 和 Max 上,环境的 API 凭据会在 VM 之外为你指定的主机请求附加一个密钥,因此密钥永远不会存在于变量中。
  • 将命令放入 CLAUDE.md。你的个人 ~/.claude 不会到达云端 VM。如果 Claude 需要知道如何运行集成测试,仓库必须说明。

值得养成的习惯

  • 一个任务,一个会话。小而独立的会话更易于审查,丢弃成本也更低。
  • 要求提供证据。说出能证明任务已完成的命令,并在查看 diff 之前阅读 Claude 的总结。
  • 在 claude --cloud 之前推送。VM 从 GitHub 克隆,因此未推送的提交不会到达它。
  • 在长任务中随时提交。空闲的 VM 可能会被回收。
  • 在 diff 视图中审查。行内评论会批量合并到你的下一条消息中,Create PR 可以打开完整 PR、草稿或 GitHub 的撰写页面。
  • 在 Claude 工作时进行引导。你在 Claude 工作时发送的消息会排队,你可以撤回一条已排队的消息。
  • 共享会话。在 Team 和 Enterprise 上,将会话的可见性设置为 Team,以便审查者可以阅读更改是如何完成的。来自云会话的提交带有一个 Claude-Session 尾注,链接回对话记录。
  • 注意你的限制。并行会话会并行消耗你的计划限制,因此五个会话消耗它们的速度大约是一个会话的五倍。Routines 有自己的每小时上限,而 projects 每天最多可启动 200 个新线程。

常见问题

谁可以使用云会话?Pro、Max 和 Team 计划,以及拥有高级席位或 Chat + Claude Code 席位的 Enterprise 用户,并使用 claude.ai 账户登录。它们不适用于 Console API 密钥或第三方提供商。请参阅 云会话文档。

我的数据会去哪里? Anthropic 会存储会话记录,保留时长取决于你的套餐和模型改进设置。虚拟机在闲置后会被回收,删除会话会移除其数据。参见数据使用和安全性。

Claude 会用我的云会话数据来训练吗? 云会话遵循与 Claude Code 其余部分相同的政策。在 Team、Enterprise 和 API 上,除非你的组织选择加入,否则 Anthropic 不会用你的代码或提示来训练模型。在 Free、Pro 和 Max 上,这取决于你的模型改进设置。参见数据使用。

它能处理我的大型代码仓库吗? 虚拟机大约有 4 个 vCPU、16 GB 内存和 30 GB 磁盘。把繁重的安装放进安装脚本,这样它们只运行一次并进入缓存的快照。

GitLab 或 Bitbucket 呢? claude --cloud 可以从任何 git 仓库上传 bundle,但会话无法推送回这些托管平台。GitHub Enterprise Server 在 Team 和 Enterprise 上受支持。参见平台限制。

并行分支发生冲突时会怎样? 这些会话彼此并不知晓。先合并一个分支,然后向下一个会话发送后续消息,例如 claude -p "rebase on main and fix any conflicts" --cloud <session-id>。

我会失去本地工具吗? 用户级配置不会随之迁移,所以把团队需要的内容放进仓库:将技能和命令提交到 .claude/ 下,把项目范围的 MCP 服务器添加到 .mcp.json,并在 CLAUDE.md 中记录测试命令。云会话中的设置列出了每个会话会读取的内容。

五分钟内开始

设置大约需要五分钟。之后,你就可以交出一个任务,合上笔记本电脑,回来时看到一个可供审查的分支。

  1. 打开 claude.ai/code,或使用你的 claude.ai 账户在 Claude Code 中运行 /login。
  2. 连接 GitHub,并在你的仓库所在位置安装 Claude GitHub App。
  3. 选择仓库和 Default 环境。
  4. 从你的待办事项中给 Claude 一个任务,并附上一条能证明任务完成的命令。
  5. 关闭标签页。稍后用手机查看,然后审查 diff 并在 claude.ai/code 创建拉取请求。

来源:Anthropic:Claude.dev 开发者博客 · claude.dev