🦀 Crabbox — 远程测试盒系统
来源: https://crabbox.sh/ | https://github.com/openclaw/crabbox
日期: 2026-05-01 (v0.1.0 首个公开版本)
评分: ⭐⭐⭐⭐
一句话版本
Crabbox 是一个让你在云端租一台临时 Linux 机器跑测试/命令的工具:你在本地改代码,Crabbox 自动把改动同步到远程机器执行,结果实时传回来,跑完关机。就像给开发者配了个"云端运行按钮",不用自己搭 CI,也不用在本地装一堆环境。
什么是 Crabbox?
Crabbox 是 OpenClaw 团队开源的远程测试盒(remote testbox)系统。核心口号是:Warm a box, sync the diff, run the suite.
简单说,它是一个 CLI 工具,让你能快速在云端租一台 Linux 机器,把你的代码同步过去运行命令,然后把结果流式传回来。
架构三大组件
| 组件 | 职责 |
|---|---|
| **CLI** (Go 语言) | 本地二进制,处理配置、SSH key 管理、git seed/rsync、命令执行和流式输出 |
| **Broker** (Cloudflare Worker + Durable Object) | 持有 provider 凭证、序列化租赁状态、强制执行额度限制、清理过期租赁 |
| **Runner** (Hetzner / AWS Spot Ubuntu) | 裸机,只装基础工具(git, rsync, curl, jq),不存任何 broker 密钥 |
工作流程:
1. Plan — 加载配置,生成临时租赁 ID 和每租赁 SSH key
2. Lease — 向 broker 发 POST /v1/leases,Worker 认证 → Durable Object 检查限额 → 创建云机器
3. Sync — 等 SSH 就绪,seed git,rsync 本地脏文件到远程 /work/crabbox/
4. Run — SSH 执行命令,流式 stdout/stderr 回本地
5. Release — 释放租赁,terminate 机器
两种使用模式
一锤子买卖:
crabbox run -- pnpm test
租机器 → 同步 → 跑 → 释放,自动完成。
热盒复用:
crabbox warmup # 租一台机器保持热状态
crabbox run --id blue-lobster -- pnpm test:changed # 复用
crabbox ssh --id blue-lobster # SSH 进去调试
crabbox stop blue-lobster # 释放
热盒有闲时超时(idle timeout),超过时间自动释放,不浪费钱。
成本控制
- TTL 限制:每台机器有最大存活时间
- 月度支出上限:按用户/组织设置
- 实时定价:EC2 Spot 历史价或 Hetzner 服务器类型价格
- 使用报告:
crabbox usage按用户、组织、provider、服务器类型汇总
机器规格
| 类别 | Hetzner | AWS Spot |
|---|---|---|
| standard | ccx33 → cpx62 → cx53 | c7a/c7i/m7a/m7i.8xlarge |
| fast | ccx43 → cpx62 → cx53 | …16xlarge |
| large | ccx53 → ccx43 → cpx62 → cx53 | …24xlarge |
| **beast** (默认) | ccx63 → ccx53 → … | …48xlarge → 32x → 24x → 16x |
特色功能
- GitHub Actions Hydration:让 Actions 先准备机器环境(装依赖、启动服务、配置密钥),然后 Crabbox 把本地改动同步进 Actions workspace 里执行
- Blacksmith Testbox 包装:设置
provider: blacksmith-testbox后委托 Blacksmith CLI 管理机器,Crabbox 保持统一的配置和命令风格 - 同步模型:不需要干净 checkout,支持脏文件 rsync、指纹跳过无变更操作、防止可疑的大规模文件删除
- OpenClaw 插件:作为原生插件暴露 agent 工具(
crabbox_run,crabbox_warmup,crabbox_status,crabbox_list,crabbox_stop)
与我们的项目的关联
💡 这是核心项目 — Crabbox 是 OpenClaw 团队的项目!
1. OpenClaw Agent 生态:Crabbox 作为 OpenClaw 原生插件,让 agent(包括我)可以直接通过 crabbox_run 等工具在云端执行命令,而不需要 shell 调用。这意味着 OpenClaw 的 agent 获得了"远程执行能力"
2. VS 你的 4GB VPS:你的 VPS 是 4GB RAM 的固定规格。Crabbox 给你弹性计算能力 —— 需要跑重型测试/构建时可以临时租一台更大的机器(比如 AWS 48xlarge),按使用付费,不用升级 VPS
3. Nightly Build 增强:你现在有 nightly build 系统(memory 整理 + 工作区清理 + cron 检查)。如果能结合 Crabbox,可以考虑在 nightly 中临时租机器跑更重的持续集成任务
4. 开发模式:如果你在做 OpenClaw 相关的开发或者测试,Crabbox 能让你在本地编辑,远程跑测试,不用在 VPS 上装一堆开发依赖
5. Agent 能力扩展:Crabbox 的 OpenClaw 插件意味着 agent 可以自主申请计算资源完成任务 —— 这和你喜欢的 "OpenClaw as LLM-native OS" 理念完全一致
评分
| 维度 | 评分 | 说明 |
|---|---|---|
| 实用性 | ⭐⭐⭐⭐ | 对 OpenClaw 维护者和 agent 场景非常实用 |
| 创新性 | ⭐⭐⭐⭐ | brokered 租赁 + CLI 同步的组合挺巧妙 |
| 文档质量 | ⭐⭐⭐⭐⭐ | 文档极其详尽,架构图清晰,部署说明完整 |
| 成熟度 | ⭐⭐⭐ | v0.1.0,不支持多租户隔离,刚发布 |
| 项目关联度 | ⭐⭐⭐⭐⭐ | OpenClaw 核心项目,直接相关 |
完整报告: https://temp.jaylab.io/crabbox-report.html