Airsc miễn phí cho tất cả. Nếu nó giúp bạn, hãy ủng hộ $2–$20.

Ủng hộ
SkillCẩn thậnKiểm thử & sửa lỗiNâng cao

crabbox

openclaw · openclaw/crabbox

Cung cấp cho coding agent các máy theo yêu cầu (cloud, VM cục bộ hoặc container) để đồng bộ mã đang sửa và chạy test, build, kiểm tra UI từ xa.

Crabbox: warm a box, sync the diff, run the suite.

1.4k sao190Giấy phép: MITCập nhật 12 ngày trước0 lượt mở

Xem trước

▍

Bạn có thể làm gì với nó

  • Chạy bộ test trên máy riêng bằng crabbox run -- pnpm test
  • Cấp máy riêng cho nhiều agent chạy song song thay vì dùng laptop của bạn
  • Kiểm thử ứng dụng trên Linux, macOS hoặc Windows từ một CLI

Kiểm tra an toàn

Cẩn thận

Dùng được, nhưng nên đọc ghi chú trước.

  • ●Yêu cầu quyền quản trị (sudo)..agents/skills/crabbox-quickstart/SKILL.md
  • ●Gửi biến môi trường hoặc token qua mạng.scripts/install-linux-developer-tools.sh

Quét tự động các file trong repo. Luôn xem lại code trước khi chạy.

Trích từ README

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
  1. Lease a box and sync your working tree, including uncommitted changes.
  2. Run pnpm test there and stream the output back to your terminal.
  3. Return the command's exit code and release the one-shot box.

Why Crabbox?

  • More agents, less contention. Give concurrent work separate cloud boxes instead of making every test suite compete for your laptop's CPU, RAM, and ports.
  • A faster edit–test loop. Keep prepared boxes warm, reuse installed dependencies, and sync changes without committing or pushing first.
  • Test across operating systems. Target Linux, macOS, native Windows, or WSL2 from the same CLI. Choose the provider and image for the job.
  • See and drive the result. Open a desktop with VNC or WebVNC, run a browser, edit through browser VS Code, and inspect runs in the coordinator portal.
  • Share capacity with a team. The optional coordinator keeps cloud credentials centrally, tracks usage, enforces spend caps, and expires stale leases.

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

1. Try a local box

Install Crabbox, start Docker or Podman, and 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. The default 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

CommandWhat it does
crabbox doctorCheck prerequisites, configuration, and provider reachability.
crabbox providers --jsonDiscover providers, targets, and capabilities.
crabbox run -- <cmd>Lease, sync, run, stream output, and release.
crabbox run --shell '<script>'Run a multi-step shell command.
crabbox warmup / crabbox prewarmKeep a box ready; prewarm also hydrates from Actions.
crabbox run --id <box> -- <cmd>Sync changes and run on an existing box.
crabbox connect --id <box>Open an interactive shell.
crabbox ssh --id <box>Print the SSH command for your own tools.
crabbox job run <name>Run a named workflow from repository configuration.
crabbox list / crabbox stop <box>List active boxes or release one.

Use --script <file> for longer scripts. Commands use your configured provider; pass --provider <name> to select one explicitly. See Commands and the CLI reference for details.

Any OS

Run platform-specific tests without moving your local checkout. These are execution targets, not just operating systems that can install the CLI:

TargetProviders
LinuxCloud VMs, local containers, self-hosted VMs, and delegated sandboxes; see the complete list.
macOSanthropic-sandbox-runtime, aws, external, lume, parallels, ssh, tart.
Native Windowsaws, azure, external, hyperv, mxc, parallels, ssh, windows-sandbox.
WSL2aws, azure, [ex
Xem mã nguồn trên GitHub