Claude Code 云端会话怎么用:和本地有什么区别、怎么连 GitHub、适合做什么
云端会话让 Claude Code 在一台全新的云端虚拟机上干活,合上电脑也不会停,可以同时开好几个。本文说明谁能用、怎么开始、怎么连接 GitHub、适合的七种用法,以及有哪些限制。
本文根据公开分享整理,本站尚未实测。操作前请对照文末的原始来源。
Anthropic 在 2026 年 10 月 6 日发了一篇很长的官方指南,讲 Claude Code 的云端会话(cloud sessions)。一句话概括:云端会话是在一台全新的云端虚拟机上运行 Claude Code,每个任务一台机器、一个分支;你合上电脑它也会继续,做完的结果是一个可以直接开 PR 的分支。
这篇文章把官方指南里对上手最有用的部分整理出来。先说两个前提:
- 要用 claude.ai 账号登录。 用 Console 的 API key 或第三方供应商接入 Claude Code 时,不能用云端会话。
- 不另外收费。 云端机器不单独计费,消耗的是套餐里和 Claude Code 共用的用量;同时开几个会话,用量也按几倍消耗。
它解决什么问题
本地运行 Claude Code 有三个绕不开的限制:
- 它用的是你的工作目录。同一个仓库开两个会话,会改到同一批文件,抢同一个端口。
- 它带着你的全部凭据在运行。
- 电脑一睡眠、网络一断,它就停了。
云端会话把这三件事都换掉了:
| 本地会话 | 云端会话 | |
|---|---|---|
| 在哪运行 | 你的电脑 | 每个任务一台全新的虚拟机 |
| 电脑睡眠或断网 | 会话停止 | 会话继续 |
| 同一个仓库同时做几件事 | 要自己处理 worktree 和端口 | 每个任务一台机器、一个分支 |
| Claude 能碰到什么 | 你的账号能碰到的一切(SSH 密钥、云服务的命令行、~/.claude) |
仓库、你选的网络级别、启用的连接器、只属于这个会话的 GitHub 凭据 |
| 从哪里开始和查看 | 那台电脑 | 浏览器、手机、桌面应用、终端、Slack |
| 权限模式 | 任何模式,包括逐条确认 | Auto、Accept edits 或 Plan |
| 结束时得到 | 工作目录里的改动 | 一个分支,需要的话再开 PR |
谁能用
- Pro、Max、Team 套餐可以用;Enterprise 需要高级席位或“Chat + Claude Code”席位。
- Team 和 Enterprise 可能需要组织的所有者先在管理后台打开云端会话。
- 使用零数据保留(ZDR)的组织,云端会话是关闭的。
五分钟上手
- 打开 claude.ai/code;或者在 Claude Code 里运行
/login,用 claude.ai 账号登录。 - 连接 GitHub,并在仓库所在的账号或组织上安装 Claude GitHub App(见下一节)。
- 选仓库,环境用默认的(Default)。
- 给 Claude 一个积压的任务,并写明用哪条命令证明做完了。
- 关掉页面,之后用手机看进度;最后在 claude.ai/code 里看 diff、开 PR。
从终端发起也可以:
claude --cloud "npm test 大约四次里失败一次。找出不稳定的测试,从代码上修掉根本原因(不要改测试),并连续跑至少 30 次来证明。"
运行前先把本地提交推上去。 claude --cloud 是从 GitHub 上克隆你当前分支的,没推送的提交它看不到。
把云端的结果拉回本地:
claude --teleport
会列出云端会话让你选。它要求本地工作目录是干净的(会提示你暂存),并且分支已经推送。在 Claude Code 里输入 /teleport 或 /tp 是同样的效果。
连接 GitHub:最容易卡住的一步
官方指南专门花了一节讲这个,因为这里有两个互相独立的权限:
- 用 GitHub 登录:只是告诉 Claude 你是谁。
- 安装 Claude GitHub App:决定 Claude 能看到哪些私有仓库。
| 你做了什么 | 公开仓库 | 你自己的私有仓库 | 组织的私有仓库 | 自动修复 PR、GitHub 触发、Projects |
|---|---|---|---|---|
| 只登录 | 能 | 不能 | 不能 | 不能 |
| 加上在个人账号安装 App | 能 | 能 | 不能 | 你自己的仓库可以 |
| 加上在组织安装 App(需所有者批准) | 能 | 个人账号也装了才能 | 能 | 组织的仓库可以 |
用 /web-setup(借用 gh 的令牌) |
能 | 能 | 令牌能访问的都能 | 不能,这些功能必须装 App |
三种连接方式:
- 在浏览器里连接(官方推荐):打开 claude.ai/connect-github,然后在拥有仓库的账号或组织上安装 Claude GitHub App。组织通常需要所有者批准。
- 在终端里连接:在 Claude Code 里运行
/web-setup,把你的gh令牌交给你的 Claude 账号。Team 和 Enterprise 要所有者先打开 Quick setup。 - 不连 GitHub:在没有 GitHub 远程仓库的项目里运行
claude --cloud,Claude Code 会把仓库打包上传。这种情况下,只有你的 GitHub 连接对这个仓库有推送权限时,会话才能把结果推回去。
常见问题:
| 现象 | 原因 | 怎么办 |
|---|---|---|
| 选仓库时看不到某个私有仓库 | 仓库所在的账号或组织没装 App,或者 App 的仓库范围没包含它 | 在那里安装 App,或者把仓库加进 App 的 Repository access |
| 刚连接完,组织的仓库都看不到 | 跳过了单点登录(SAML SSO)的授权步骤 | 在那一步对每个组织点 Authorize,或者到 GitHub 设置里授权后重新连接 |
| 提示必须是组织所有者才能关联 | 组织挡住了成员身份检查(待处理的 App 权限请求、IP 白名单或 SAML SSO) | 让所有者处理待批准的请求,或调整对应的设置 |
目前只能把结果推回 GitHub;GitLab 和 Bitbucket 收不到推送。Team 和 Enterprise 支持 GitHub Enterprise Server。
适合的七种用法
官方指南列了七种,这里各用一两句话说明:
- 并行清理积压的任务。 每个互不相关的任务开一个
claude --cloud,最后逐个分支审查。任务描述要自成一体:哪里有问题、做完是什么样、怎么证明。 - 让它自己证明修好了。 适合要反复跑的验证,比如把测试跑 200 遍、在 50 个提交里二分查找、跑很慢的集成测试。
- 在本地做计划,在云端执行,回终端收尾。 本地用 plan 模式做计划,把计划提交并推送,再让云端会话照着执行,最后用
claude --teleport拉回来。 - 用手机跟进。 Claude 手机应用的 Code 标签页可以发起任务、看进度、回答 Claude 的提问。
- 把 CI 失败和评审意见交给 Claude。 需要安装 Claude GitHub App。打开 Auto-fix,或者在 PR 分支上运行
/autofix-pr。明确的问题它会直接修并说明;有歧义或涉及架构的改动会先问你。 - 定时和事件触发(Routines,研究预览)。 把提示词、仓库、连接器和环境存成一个 routine,按计划(最多每小时一次)、HTTP 调用或 GitHub 事件触发,每次运行都是一个云端会话。可以用
/schedule创建。 - 运行你不完全信任的代码。 来路不明的 PR、新依赖的安装脚本,放在一次性的虚拟机里跑,里面没有你的 SSH 密钥和各种登录状态。
第 7 条有一点要清楚:即使把网络级别设成最严格的 None,Claude Code 仍然要调用 Anthropic 的 API,会话也仍然能推送到自己的分支,所以数据并不是完全出不去。
官方演示里,三个云端会话在 16 秒内先后启动,分别运行了 61、65、72 秒,从第一个启动算起 87 秒全部完成。其中一个会话负责加结构化日志,过程中发现另一个会话正在修的缓存竞争问题;它提出了同样的修法,但因为不在自己的任务范围内,没有去动缓存,并如实说明测试没有全绿。会话之间互相看不到对方的工作,所以任务要按文件边界来拆。
环境怎么配
默认环境是:Trusted 级别的网络访问,没有环境变量,没有安装脚本。官方说这对多数 JavaScript、Python、Go、Rust 仓库已经够用。
需要更多时可以新建环境,设置四样东西:名字、网络访问级别、环境变量(.env 格式)、安装脚本。
安装脚本
- 在 Claude Code 启动之前以 root 身份运行,所以可以用
apt install。 - 必须以 0 退出,否则会话启动不了。
- 最好在大约 5 分钟内跑完,这样环境可以被缓存;之后的新会话从快照启动,工具已经装好。
- 改了脚本或允许访问的主机后缓存会重建,另外大约每 7 天重建一次。
- 缓存保存的是文件,不是正在运行的进程。数据库这类服务要在提示词或 SessionStart hook 里启动。
网络级别
| 级别 | 说明 |
|---|---|
| None | 最严格 |
| Trusted | 常见的包仓库、GitHub、主要云服务的 SDK 主机 |
| Custom | 可以加上私有的包仓库 |
| Full | 开放访问互联网,只在确实需要时用 |
你本地的设置不会跟过去
你的 ~/.claude 留在自己的电脑上,不会进入虚拟机。跟着仓库走的只有仓库里的 CLAUDE.md、规则、skills、agents 和命令。所以:
- 团队共用的 skills 和命令,提交到仓库的
.claude/下; - 项目用的 MCP 服务器写进
.mcp.json; - 测试命令写进仓库的
CLAUDE.md。
npm install 这类每次都要跑的步骤,可以写成仓库 .claude/settings.json 里的 SessionStart hook,本地和云端都会执行;只想在云端执行的步骤,用 CLAUDE_CODE_REMOTE 这个环境变量来判断。
密钥
环境变量对所有使用这个环境的人可见,不要直接把密钥写进去。
限制
| 项目 | 限制 |
|---|---|
| 虚拟机 | 大约 4 个 vCPU、16 GB 内存、30 GB 磁盘 |
| 前台命令 | 默认 2 分钟超时,最长 10 分钟,之后转到后台最多再运行 30 分钟。可以用环境变量 BASH_DEFAULT_TIMEOUT_MS 和 BASH_MAX_TIMEOUT_MS 调整 |
| 空闲的虚拟机 | 会被回收。重新打开时是一台新机器,对话记录会恢复,但没提交的改动不保证还在 |
| 用量 | 并行的会话同时消耗用量,五个会话大约是一个的五倍 |
| Routines | 最多每小时触发一次,另有每小时的次数上限 |
| 代码托管 | 只能推回 GitHub |
因为空闲的机器会被回收,长任务要让 Claude 边做边提交。
什么时候还是用本地
官方列出的情况:要用到本地的真实数据库、只有连 VPN 才能访问的服务、GPU、手机模拟器、桌上的硬件;需要频繁看界面效果的调试;以及使用零数据保留的组织。
介于两者之间还有两个选择:Remote Control 让会话留在本地运行,但可以从手机或浏览器操控;自托管环境(测试版,Team 和 Enterprise)让云端会话跑在你们自己的基础设施上,可以访问内网。
常见问题
代码会被拿去训练吗? Team、Enterprise 和 API 用户的代码和提示词不会用于训练,除非组织主动选择加入。Free、Pro、Max 取决于你在 claude.ai 隐私设置里的“模型改进”选项。
数据保存在哪? 对话记录由 Anthropic 保存,保留多久取决于套餐和上面那个选项。虚拟机在空闲后被回收;删除会话会删除它的数据。
两个并行的会话改到同一个地方怎么办? 会话之间互不知情。先合并其中一个分支,再让另一个会话变基:
claude -p "rebase on main and fix any conflicts" --cloud <session-id>
通过中转站或第三方供应商用 Claude Code,能用云端会话吗? 不能。官方写明云端会话要用 claude.ai 账号登录,Console 的 API key 和第三方供应商都不支持。