跳转到主要内容

网络上的Claude代码

更新于今天

网页版Claude Code可以远程运行Claude Code任务,处理来自GitHub仓库的代码。本文介绍了它的工作原理、何时使用它而不是在终端或IDE中运行Claude Code,以及它支持的工作流程。

网页版Claude Code提供的功能

网页版Claude Code让你可以将任务委托给Claude,这些任务可以在没有你主动监督的情况下运行。在浏览器中,你选择一个GitHub仓库,描述你想要完成的工作,Claude在远程环境中处理该任务。Claude Code开始处理任务后,你可以完全离开该页面;Claude将继续其工作。完成后,Claude会自动创建一个包含更改的拉取请求供你审查。

此功能适用于你本地机器上可能没有的仓库。你可以在任何有权访问的GitHub仓库上启动任务,无需在本地克隆或设置开发环境。这对于你偶尔贡献的项目或你仍在学习的代码库很有用。

网页版Claude Code支持异步开发工作流程。使用终端或编辑器中的Claude Code,你通常同步工作:你发出请求,等待Claude响应,审查更改,然后发出另一个请求。这种同步工作方式给你细粒度的控制,但需要你在整个过程中保持关注。网页版Claude Code的处理方式不同:你可以分配一个更大的任务,让Claude独立工作,然后稍后返回审查完成的工作。

你也可以并行运行多个任务。由于每个任务在自己的隔离环境中运行,你可以让Claude同时处理多个不同的问题或仓库。每个任务独立进行,完成时创建自己的拉取请求。多个任务可以同时在同一仓库上工作。

工作原理

启动任务时,网页版Claude Code为你的工作创建一个隔离的虚拟机。你的GitHub仓库被克隆到此环境中,该环境预配置了常见的开发工具和语言生态系统。

Claude通过运行你在仓库配置中定义的任何设置命令来准备环境。这包括安装依赖项、设置数据库或运行项目需要的其他初始化步骤。如果你的任务需要网络访问(可能是为了安装包或获取数据),你可以配置环境拥有的互联网访问级别。

环境准备好后,Claude开始处理你的任务。Claude读取你的代码、进行更改、编写测试并运行命令来验证工作。如果需要,你可以通过网页界面监控进度并提供指导。

Claude完成任务后,它将更改推送到GitHub仓库中的新分支。你会收到通知,可以审查更改,然后直接从界面创建拉取请求。拉取请求包含Claude的所有工作,准备好供你审查和进行任何其他你想要的更改。

每个任务在完全隔离的环境中运行。虚拟机仅针对该特定任务存在,并包括安全控制,如受限的网络访问和受保护的凭证处理。你的GitHub身份验证通过安全代理进行管理,因此凭证永远不会直接存在于Claude工作的环境中。

何时使用网页版Claude Code与终端

网页版Claude Code是使用Claude Code的一种新方式。某些任务适合在网页上异步执行,而其他任务仍然最好通过终端或IDE中的Claude Code运行。

使用网页版Claude Code的场景:

  • 定义明确的任务和清晰的需求:当你能够准确描述需要完成的工作,并且不期望需要在任务中途引导Claude时,网页界面让你启动工作并在完成时返回。

  • 处理bug积压的后台工作:你可以从积压中分配Claude多个问题,让它们并行运行。每个任务独立进行,允许你同时处理多个修复,而无需单独监控每一个。

  • 你本地没有的仓库:如果你需要对未克隆或不想在机器上设置的仓库进行更改,网页版Claude Code会为你处理环境设置。

  • 你想要排队的任务:当你有一个更改列表要进行,但现在不想处理它们时,你可以在网页上启动任务,稍后审查结果。这让你可以批量处理类似的工作或在你专注于其他事情时委托任务。

在终端/IDE中使用Claude Code的场景:

  • 需要频繁纠正方向的任务:当你不确定正确的方法是什么,或期望需要根据你看到的内容重新引导Claude时,在终端中工作可以给你即时反馈。你可以在Claude工作时调整方向,而不是等待完整的结果。

  • 需求不清楚的探索性工作:如果你正在弄清楚如何解决问题或调查不同的方法,终端让你在学习时完善你的请求。来回的讨论有助于澄清一开始不明显的需求。

  • 有未提交更改的本地开发:当你正在积极开发并在本地仓库中有未提交的工作时,在终端中使用Claude Code可以将所有内容保持在一个地方。你可以快速迭代更改,而无需提交或推送尚未准备好的工作。

  • 需要即时反馈的任务:如果你需要快速看到结果并想要快速迭代,终端提供更低的延迟。你可以实时观看Claude工作,如果早期出现问题,可以停止或重新引导。

示例用例

使用测试驱动开发的后端更改

让Claude编写定义预期行为的测试,然后实现代码以使这些测试通过。这对于可以通过自动化测试验证行为的后端更改特别有效。

示例提示:

为/api/search端点添加速率限制。

速率限制器应该:
- 每个API密钥每分钟允许100个请求
- 超过限制时返回429状态
- 60秒后重置限制
- 独立跟踪不同的API密钥

使用TDD方法:先编写全面的测试,然后实现速率限制逻辑以通过它们。

何时使用此方法:这在网页上效果很好,因为测试给Claude清晰的验证标准来努力实现。你不需要监控Claude的进度,因为测试会捕捉问题并引导迭代朝向工作解决方案。任务的自包含性质(Claude编写测试然后使其通过)不需要你在启动后的输入。

使其有效的原因:Claude可以在没有你监督的情况下迭代实现,使用测试失败来识别和修复问题。任务运行时间比简单的代码更改要长,但你可以让它在后台完成。当你审查拉取请求时,测试和实现都已准备好,你对解决方案有信心,因为测试通过了。

文档更新

生成或更新技术文档,如README文件、API文档、代码注释或用户指南。

示例提示:

使用v2.3.0版本发布以来的所有更改更新CHANGELOG.md:
- 审查该标签以来主分支上的提交。
- 将更改分类为"Added"、"Changed"、"Fixed"和"Removed"部分。
- 为每个条目包含提交哈希。

何时使用此方法:更新日志非常适合网页,因为Claude可以独立审查提交历史并格式化条目而无需指导。该任务手动执行很繁琐,但足够直接,Claude可以在没有关于包含哪些提交或如何分类它们的问题的情况下完成。

使其有效的原因:你可以委托整个更新日志更新并在完成时审查结果。Claude读取提交,提取有意义的更改,并遵循你现有的更新日志格式。

具有清晰范围的重构

当你可以为更改定义清晰的边界时,重新组织代码以改进组织或可读性。这包括提取代码、拆分大文件或组织模块结构。

示例提示:

/src/services/user.go中的UserService类有800行长。
将其拆分为三个专注的服务:
- UserAuthService(登录/登出/会话)
- UserProfileService(配置文件CRUD操作)
- UserPreferencesService(设置/偏好)

确保所有测试仍然通过。

何时使用此方法:具有清晰约束的重构在网页上效果很好,因为你可以为Claude设置清晰的边界来遵循。测试套件可以提供验证,允许Claude验证重构没有破坏任何现有功能。

使其有效的原因:该任务需要时间,但在定义结构后不需要你的主动输入。你可以启动重构并稍后审查组织的结果,而不是在Claude处理任务时监控它。清晰的范围意味着Claude不太可能需要在任务中途的指导。

有效使用的提示

  • 考虑向你的仓库添加测试套件,以便Claude更容易验证它是否成功完成了任务

  • 指定成功标准,而不是"改进"或"修复"这样的模糊目标

  • 在你的提示中定义应该改变的内容和应该保持不变的内容

  • 使用清晰的边界来界定任务范围,以便Claude不需要在任务中途的指导

  • 如果你在想"我需要先看看这是如何进行的",考虑改用你的终端

  • 如果你在任务中途意识到需要提供指导,使用"在CLI中打开"

这是否解答了您的问题?