On-demand computers for coding agents.
Crabbox gives agents and humans a computer to run tests, builds, and UI checks while they keep editing locally. Choose a cloud box, a local VM or container, or a machine you already own.
Quick start · Commands · Any OS · Desktop and browser · Providers · Install · Docs
With your provider and project dependencies configured:
crabbox run -- pnpm test
- Lease a box and sync your working tree, including uncommitted changes.
- Run
pnpm testthere and stream the output back to your terminal. - Return the command's exit code and release the one-shot box.
Why Crabbox?
- More agents, less contention. Give concurrent work separate cloud boxes
- A faster edit–test loop. Keep prepared boxes warm, reuse installed
- Test across operating systems. Target Linux, macOS, native Windows, or
- See and drive the result. Open a desktop with VNC or WebVNC, run a browser,
- Share capacity with a team. The optional coordinator keeps cloud credentials
Capabilities vary by provider. Crabbox supplies computers and execution evidence; your agent or harness decides what to run and what the result means.
Quick start
0. Install
On macOS or Linux with Homebrew:
brew install openclaw/tap/crabbox
crabbox --version
On Linux without Homebrew, extract a release archive and keep crabbox-runtime/
beside the crabbox executable (use arch=arm64 on ARM):
v=0.81.0 arch=amd64
curl -fLO "https://github.com/openclaw/crabbox/releases/download/v$v/crabbox_${v}_linux_${arch}.tar.gz"
curl -fLO "https://github.com/openclaw/crabbox/releases/download/v$v/checksums.txt"
sha256sum -c checksums.txt --ignore-missing
mkdir -p ~/.local/share/crabbox
tar -xzf "crabbox_${v}_linux_${arch}.tar.gz" -C ~/.local/share/crabbox
export PATH="$HOME/.local/share/crabbox:$PATH"
crabbox --version
GNU tar may warn about LIBARCHIVE.xattr.com.apple.provenance headers; they are
harmless. See Install for Windows and other options.
1. Try a local box
Start Docker or Podman and make sure git, ssh, ssh-keygen, and rsync are
on your PATH (Debian/Ubuntu: sudo apt-get install -y git openssh-client rsync).
Then enter a Git repository you trust. No cloud account or coordinator login
is needed:
crabbox doctor --provider local-container
crabbox run --provider local-container -- uname -a
You should see Linux kernel information, followed by cleanup of the one-shot
container. First startup includes an image pull and bootstrap. On images with
apt-get, missing sshd, git, rsync, curl, sudo, or python3 triggers
installation of those tools and CA certificates, so the container needs internet access.
For offline or locked-down engines, pass --local-container-image with an image
that already has those tools. The box has Crabbox's sync/run prerequisites;
supply your project's runtime and dependencies.
2. Run a project's tests
For a Node.js repository with a package-lock.json and an npm test script:
crabbox run --provider local-container \
--local-container-image node:22-bookworm \
--shell 'npm ci && npm test'
Choose an image compatible with your project. For remote boxes, use a prepared image, repository setup scripts, or Actions hydration. Dependency and build directories are excluded from normal workspace sync.
3. Reuse a box while you iterate
crabbox warmup --provider local-container --slug dev-box
crabbox run --provider local-container --id dev-box -- uname -a
Edit locally, then run again with the same --id.
Open a shell, or release the box when finished.
crabbox connect --provider local-container --id dev-box
crabbox stop --provider local-container dev-box
Replace uname -a with your test command once the box is prepared. warmup
keeps a reusable lease; prewarm also performs Actions hydration. Use the
printed cbx_... ID or friendly slug to select it. Each agent can keep its own
lease and working directory.
Already have a team coordinator?
Use your team's URL in place of this example:
crabbox login --url https://broker.example.com
crabbox doctor
crabbox run -- pnpm test
The repository must select a provider and prepare its remote runtime and dependencies. For your own cloud account, follow a provider guide and skip coordinator login. Cloud capacity is billed by the provider; choose machine sizes deliberately.
Getting started · Local Container
Everyday commands
| Command | What it does |
| --- | --- |
| crabbox doctor | Check prerequisites, configuration, and provider reachability. |
| crabbox providers --json | Discover providers, targets, and capabilities. |
| crabbox run -- | Lease, sync, run, stream output, and release. |
| crabbox run --shell '
Chat with me