Claude Code Web 版适合在浏览器或手机上把 GitHub 仓库交给 Anthropic 云端 VM 执行任务,提交后会自动克隆、修改并推送分支供你审查。连接 GitHub、创建环境、配置网络访问和运行 /web-setup 的关键限制都在这里,便于排查仓库不显示、环境创建失败或会话卡在 setup 的问题。

Claude Code Web 版怎么连接 GitHub 和开始任务

Claude Code on the web 让你在浏览器或手机上提交开发任务,代码在 Anthropic 托管的云端基础设施里运行,不需要在本地机器上搭环境。你需要先连接 GitHub,然后创建云端环境,Claude 才能在隔离 VM 中克隆仓库、运行脚本、修改代码并推送分支。

它适合这些场景:

  • 并行任务:同时跑多个互不依赖的任务,每个任务有自己的会话和分支
  • 本地没有检出的仓库:Claude 每次都会重新克隆仓库,不要求你本地有 checkout
  • 不需要频繁干预的任务:把任务交出去,完成后再回来审查结果
  • 代码问答和探索:不用本地检出也能理解代码库或追踪功能实现

如果任务需要本地配置、本地工具或本地环境,Claude Code 本地运行或者 Remote Control 更合适。

会话是如何运行的

当你提交任务时:

  1. 克隆和准备:仓库会被克隆到 Anthropic 托管的 VM,如果你配置了 setup script 就会先运行
  2. 配置网络:网络访问按环境的 access level 设置
  3. 工作:Claude 分析代码、修改文件、运行测试并检查结果。你可以一直盯着,也可以先离开
  4. 推送分支:到达停止点后,Claude 会把分支推送到 GitHub。你可以查看 diff、加行内评论、创建 PR,或者继续发消息让它接着做

分支推送后,会话不会结束。PR 创建和后续修改仍在同一个对话里完成。

比较不同运行方式

Claude Code 在各处的行为一致,差别在于代码在哪里执行,以及能不能用到你的本地配置。Desktop app 同时支持本地和云端会话,所以表格里的结果取决于你选哪种会话。

On the web Remote Control Terminal CLI Desktop app
Code runs on Anthropic cloud VM Your machine Your machine Your machine or cloud VM
You chat from claude.ai or mobile app claude.ai or mobile app Your terminal The Desktop UI
Uses your local config No, repo only Yes Yes Yes for local, no for cloud
Requires GitHub Yes, or bundle a local repo via --remote No No Only for cloud sessions
Keeps running if you disconnect Yes While terminal stays open No Depends on session type
Permission modes Auto accept edits, Plan Ask, Auto accept edits, Plan All modes Depends on session type
Network access Configurable per environment Your machine’s network Your machine’s network Depends on session type

如果你要配置其他运行方式,可以看 terminal quickstartDesktop appRemote Control

连接 GitHub 并创建环境

设置只需要做一次。如果你已经在用 GitHub CLI,也可以直接从终端完成,不用开浏览器。

  1. 打开 claude.ai/code,用 Anthropic 账号登录。
  2. 登录后,页面会提示你连接 GitHub。按提示安装 Claude GitHub App,并授权访问你的仓库。云端会话支持现有 GitHub 仓库;如果你要从零开始建项目,先在 GitHub 上创建一个空仓库:https://github.com/new
  3. 连接 GitHub 后,会要求你创建云端环境。环境决定了会话能访问哪些网络、以及新会话创建时会运行什么。

表单字段如下:

  • Name:显示名称。适合你为不同项目或不同访问级别创建多个环境时使用
  • Network access:控制会话能访问哪些互联网资源。默认值 Trusted 允许连接 common package registries,例如 npm、PyPI 和 RubyGems,但会阻止一般互联网访问
  • Environment variables:可选变量,每个会话都能用,格式是 .env。值不要加引号,因为引号会被当成值的一部分保存。任何能编辑这个环境的人都能看到这些变量
  • Setup script:可选的 Bash 脚本,在 Claude Code 启动前运行。用它安装云端 VM 默认没有的系统工具,比如 apt install -y gh。脚本结果会被 cached,所以不会每次会话都重跑。更多示例和排错技巧见 Setup scripts

第一次使用时,直接保留默认值,点 Create environment 就行。后面可以再编辑环境,或者为不同项目新建更多环境。

从终端连接

如果你已经在使用 GitHub CLI(gh),可以不用打开浏览器完成 Claude Code Web 版设置。这需要先安装 Claude Code CLI/web-setup 会读取你本地的 gh token,把它绑定到 Claude 账号;如果你还没有云端环境,它还会创建一个默认环境。

已启用 Zero Data Retention 的组织不能使用 /web-setup 或其他云端会话功能。如果没有安装或登录 GitHub CLI,/web-setup 会改为打开浏览器里的 onboarding 流程。

  1. 在 shell 里先登录 GitHub CLI,如果还没登录:

    gh auth login
  2. 在 Claude Code CLI 里运行 /login 登录你的 claude.ai 账号。如果你已经登录过,可以跳过这一步。

  3. 在 Claude Code CLI 里运行:

    /web-setup

这会把你的 gh token 同步到 Claude 账号。如果你还没有云端环境,/web-setup 会创建一个默认环境,使用 Trusted 网络访问且不带 setup script。之后你可以再编辑环境或添加变量。完成后,你就能在终端里用 --remote 启动云端会话,或者用 /schedule 配置周期任务。

启动任务

GitHub 连接好、环境也建好后,就可以提交任务了。

  1. claude.ai/code 或 Claude mobile app 的 Code 标签页里,点击输入框下方的仓库选择器,挑一个 Claude 要工作的仓库。每个仓库旁边都有分支选择器,你可以改成从某个 feature branch 开始。一个会话里也可以添加多个仓库,在它们之间一起工作。

  2. 输入框旁边的模式下拉菜单默认是 Auto accept edits,这种模式下 Claude 会直接修改并推送分支,不会停下来逐步确认。如果你想让 Claude 先给方案、等你点头再改文件,切到 Plan mode。云端会话不提供 Ask permissions、Auto mode 或 Bypass permissions。完整列表见 Permission modes

  3. 输入你要做的事,然后按 Enter。描述要具体:

    • 写明文件名或函数名:Add a README with setup instructionsFix the failing auth test in tests/test_auth.py 比单纯写 fix tests 更好
    • 如果有错误输出,直接贴出来
    • 描述你期望的行为,不要只写症状

Claude 会克隆仓库、在需要时运行 setup script,然后开始处理。每个任务都有自己的会话和分支,所以你不需要等一个任务结束再开下一个。

预填充会话

你可以在 claude.ai/code 的 URL 后面加查询参数,预先填好新会话的提示语、仓库和环境。这个方式适合做集成,比如在工单系统里放一个按钮,点一下就用工单内容打开 Claude Code。

Parameter Description
prompt Prompt text to prefill in the input box. The alias q is also accepted.
prompt_url URL to fetch the prompt text from, for prompts too long to embed in a query string. The URL must allow cross-origin requests. Ignored when prompt is also set.
repositories Comma-separated list of owner/repo slugs to preselect. The alias repo is also accepted.
environment Name or ID of the environment to preselect.

每个值都要做 URL 编码。下面的示例会打开一个已经填好提示语并选好仓库的表单:

https://claude.ai/code?prompt=Fix%20the%20login%20bug&repositories=acme/webapp

审查和迭代

Claude 完成后,查看改动,在具体代码行上给反馈,然后继续迭代,直到 diff 符合预期。

  1. diff 指示器会显示这次会话里新增和删除的行数,比如 +42 -18。点它可以打开 diff 视图,左边是文件列表,右边是改动内容
  2. 在 diff 里选中任意一行,输入你的反馈,然后按 Enter。评论会先排队,等你下一次发消息时一起发送。Claude 会把“在 src/auth.ts:47 这里不要捕获这个错误”这类行内评论和你的主指令一起看到,不用你再重复说明位置
  3. 当 diff 看起来没问题时,点击 diff 视图顶部的 Create PR。你可以直接创建完整 PR、草稿 PR,或者跳转到 GitHub 的 compose 页面,并自动带上标题和描述
  4. PR 创建后,会话还会保持在线。你可以把 CI 失败输出或 reviewer 评论贴到聊天里,让 Claude 继续处理。想让 Claude 自动监控 PR,见 Auto-fix pull requests

排查设置问题

连接 GitHub 后没有出现仓库

云端会话可以使用连接到的 GitHub 账号能看到的任何仓库,不要求 Claude GitHub App 安装在那个仓库上。如果仓库没出现,先确认你连接的 GitHub 账号本身就有这个仓库的访问权限。若你还想对某个仓库启用 Auto-fix,还需要把 App 安装到该仓库:在 github.com 打开 Settings → Applications → Claude → Configure,确认 Repository access 里列出了该仓库。私有仓库需要和公开仓库一样的授权。

页面只显示 GitHub 登录按钮

云端会话需要先连接 GitHub 账号。你可以按上面的浏览器流程连接,或者如果你在用 GitHub CLI,就从终端运行 /web-setup。如果你不想连接 GitHub,也可以看 Remote Control,在自己的机器上运行 Claude Code,再从网页监控它。

“Not available for the selected organization”

Enterprise 组织可能需要管理员先启用 Claude Code on the web。联系你的 Anthropic 客户团队。

/web-setup 返回 “Unknown command”

/web-setup 是在 Claude Code CLI 里运行的,不是在你的 shell 里。先启动 claude,然后在提示符里输入 /web-setup

如果你是在 Claude Code 里输入的,还是看到这个错误,那通常是因为你的 CLI 版本低于 v2.1.80,或者你登录的是 API key / 第三方 provider,而不是 claude.ai subscription。先运行 claude update,再用 /login 登录你的 claude.ai 账号。

使用 --remote 或 ultraplan 时提示 “Could not create a cloud environment” 或 “No cloud environment available”

Remote-session 功能会在你没有云端环境时自动创建一个默认环境。如果看到 “Could not create a cloud environment”,说明自动创建失败了。{/* max-version: 2.1.100 */}如果看到 “No cloud environment available”,说明你的 CLI 版本还不支持自动创建。无论哪种情况,都可以在 Claude Code CLI 里运行 /web-setup 手动创建,或者访问 claude.ai/code 按上面的 Create your environment 步骤操作。

Setup script 失败

setup script 返回了非零退出码,会阻止会话启动。常见原因有:

  • 安装包失败,因为对应 registry 不在你的 network access level 里。Trusted 覆盖大多数包管理器,None 会全部阻止
  • 脚本引用了 fresh clone 中不存在的文件或路径
  • 某个本地可用命令在 Ubuntu 上需要不同写法

排错时,可以在脚本顶部加 set -x 来看是哪条命令失败。对于非关键命令,可以在后面加 || true,避免它阻塞会话启动。

新会话在 setup 阶段卡住或超时

如果新会话卡在 setup script 步骤,或者在脚本执行完之前就报通用容器错误,通常是 setup script 超过了大约五分钟的环境缓存构建时间。像拉取大体积 Docker 镜像、同步完整依赖树、下载模型权重这类重任务,尤其是串行执行时,很容易超时。

解决办法是把脚本压缩到能稳定在五分钟内完成:

  • & 并行执行独立安装,再用最后一个 wait 收尾,而不是串行执行
  • 把最大的下载移出 setup script,放到会后台启动的 SessionStart hook 里,这样会话可以先可用,下载随后再完成
  • 去掉 setup script 里的长时间重试睡眠,因为卡住的重试循环也会计入这五分钟预算

关闭标签页后会话还在运行

这是正常设计。关闭标签页或跳转页面不会停止会话。它会继续在后台运行,直到 Claude 完成当前任务,然后进入空闲状态。你可以在侧边栏里归档会话把它从列表里隐藏,或者删除会话永久移除。

下一步

现在你已经能提交和审查任务了,接下来可以了解如何从终端启动云端会话、设置周期任务,以及给 Claude 添加长期指令。

  • Use Claude Code on the web:完整参考,包括把会话“传送”到终端、setup script、环境变量和网络配置
  • Routines:按计划、通过 API 调用,或在 GitHub 事件触发时自动执行工作
  • CLAUDE.md:给 Claude 提供会话开始时加载的持久指令与上下文
  • 在 Claude Code CLI 里运行 /mobile 可以显示二维码,安装 Claude mobile app 后可在手机上监控会话

常见问题

Claude Code Web 版和本地 CLI 有什么区别?

Web 版在浏览器里运行,不需要本地安装,适合快速开始、临时排查和不方便打开终端的场景。本地 CLI 更适合需要本地文件、钩子、MCP 服务器或本地环境的工作流。两者使用的是同一套 Claude 能力,差别主要在执行位置和可用上下文。

Web 版 Claude Code 可以和本地项目共享同一个仓库吗?

可以。只要两边连接的是同一个 GitHub 仓库,本地和 Web 版就能访问同一份代码。但本地配置文件,比如 settings、hooks,不会自动同步到 Web 版。

Web 版 Claude Code 需要什么浏览器?

支持主流现代浏览器,包括 Chrome、Firefox、Safari 和 Edge。为了体验更稳定,推荐使用 Chrome 或基于 Chromium 的浏览器。需要稳定的网络连接,不支持离线使用。