把任务发送到云端
云端智能体会把任务从你的机器上接走:它在一个全新的云端沙箱中工作,推送一个分支并提交拉取请求,你则可以继续在本地工作。在你确认之前,不会启动任何东西、不会产生费用,也不会推送代码。
了解目前的完成度
注意: 云端智能体目前是预览版。完整流程已有离线测试覆盖,但真实链路——真实的沙箱,以及在各个代码托管平台上真实提交的拉取请求——尚未经过端到端验证。暂不支持私有仓库。
开始之前
- 用
codewhale login登录你的 Codewhale 账户。未登录时,任务只能提议,无法确认。 - 把账户 API 密钥设为
CODEWHALE_API_KEY,让沙箱中的智能体以你的账户身份运行。缺少它时,确认会在产生任何费用之前被拒绝。 - 如果使用 GitHub,请先登录
gh命令行工具;Codewhale 会用这个登录来提交拉取请求。
codewhale dispatch --status--status 会显示从你的 git 远程仓库中识别出的代码托管平台,以及所需的凭据是否齐全。它从不打印任何密钥。
先提议,再确认
codewhale dispatch "fix the flaky login test and open a PR" --remote github
codewhale dispatch --confirm cloud_<id>第一条命令只写入一份提议并打印其 id;第二条命令才真正启动。Codewhale 可以自己提议云端任务,但从不自行确认。在会话中,使用 /dispatch <task> 和 /dispatch confirm <id>。
确认之后,智能体会把仓库克隆到一个新沙箱中完成工作,推送一个新分支(绝不强制推送),并提交拉取请求。任务完成、失败或被取消时,沙箱都会被删除。
跟踪或取消任务
codewhale dispatch --list
codewhale dispatch --show cloud_<id>
codewhale dispatch --cancel cloud_<id>云端任务也会出现在 /jobs 中。每个任务会显示进度、分支、拉取请求链接(有了之后),以及运行了多少分钟——这是运行时长,不是账单。取消会立即拆除沙箱。
选择拉取请求提交到哪里
Codewhale 支持 GitHub、CNB 和 Gitee,且从不假定 origin 就是 GitHub。名为 github、cnb 或 gitee 的远程仓库即对应该平台;其他远程仓库按其主机名识别。如果仓库关联了多个平台,请传入 --remote。
如果拉取请求无法提交——例如缺少代码托管平台的令牌——任务会在推送之后被标记为失败,并说明没有提交拉取请求。它绝不会报告一个并不存在的链接。