Crabbox moves the working tree you have, including its unfinished changes
Crabbox takes the repository on your machine, syncs tracked changes and nonignored files to another box, runs a command, streams its output, and returns the exit code. The destination can be a local container, an SSH host, a cloud VM, or a managed sandbox. A one-shot run cleans up afterward; a warm lease keeps the prepared environment for the next edit-and-run cycle.
The tool fills a gap between local development and CI. You can test an uncommitted fix on Linux from a Mac, keep a failed machine for inspection, download artifacts, or reuse an expensive prepared environment without pushing a branch. Named jobs in .crabbox.yaml make that flow reviewable inside the repository.
What happened when we ran it
Our sandbox cloned commit be7cf9d and installed 632 Go packages in 58 seconds. The build completed in 333 seconds. The 43.9 MB checkout contained 2,865 files and about 1,031,671 lines of source. We found 20 CI workflow files, no Dockerfile, and no top-level tests directory. This is a substantial infrastructure project even though its front door is one CLI.
The test command reached our 900-second cap and timed out. The harness counted 49 passing and 26 failing Go test targets out of 75. The log ended with a panic reaching TestScalewayRootManifestPublicationFailureCanOnlyBeReleased, followed by a failed Scaleway package and several successful provider packages. The tail omits the originating panic message, so it does not identify the cause.
A local container is the smallest honest evaluation
The quickest trial needs Git, Docker or Podman, and a trusted repository. crabbox doctor checks the provider. A run then creates a Linux container, syncs the checkout, executes a command, and releases the box. First startup includes an image pull. The default box has Crabbox's requirements, not your project's runtimes or dependencies.
Homebrew and release archives contain the complete distribution. A source install needs Go 1.26 and produces only the CLI, omitting native helpers and runtime packs used by some features. The README also warns against mixing a runtime pack with a differently built controller. Start with a prebuilt release unless you know which capabilities a CLI-only build leaves out.
Remote providers turn a command into infrastructure ownership
Crabbox documents local containers, static SSH, major clouds, Proxmox, Incus, Firecracker, Apple virtualization, managed sandboxes, and GPU providers. Capabilities differ. Some support snapshots or desktops, while cleanup and coordinator requirements vary. The provider matrix matters because the backend decides which lifecycle promises the CLI can keep.
A team coordinator adds credentials, leases, usage limits, history, and stale-resource cleanup. It can run on Cloudflare or Node.js with PostgreSQL, and state does not migrate automatically between them. Release v0.64.0 also moved Boxd to TLS gRPC with bxd_ API keys. Upgrades may touch the CLI, coordinator, guest hooks, or provider policy.
Crabbox is not a security boundary for hostile repositories
The trust model says Crabbox trusts the local operating-system user, repository configuration, project tools, and coordinator operators. It is not designed to isolate adversarial tenants, scrub secrets, or replace CI. Repository configuration can execute helpers and mount host resources. Passing a container socket through to a run also grants access to the host engine.
Only CI and NODE_OPTIONS cross by default; other environment names need an allowlist. Captured output, artifacts, and failure bundles are not cleaned for credentials. Review them before sharing. Unknown code needs a stronger sandbox boundary than Crabbox claims to provide.
Agent Skills expose the CLI to Claude Code and other clients
crabbox init --detect can write .agents/skills/crabbox/SKILL.md. The guide also documents .claude/skills/crabbox/SKILL.md for Claude Code, plus discovery across Codex, Cursor, Copilot, Windsurf, Devin, Zed, and Gemini CLI. The skill teaches an agent when to warm, run, inspect, and stop a lease. It neither installs Crabbox nor grants credentials.
The project publishes crabbox and crabbox-quickstart skills. The quick-start skill stops before provider login, secrets, named jobs, or artifacts become necessary. There is no implemented MCP adapter in the README; it appears only as a possible later option. Shell commands and repository jobs remain the inspectable action layer.
v0.64.0 is active, broad, and still moving quickly
GitHub showed 1,417 stars and 26 combined issues and pull requests. The repository was pushed on September 22, 2026, one day after v0.64.0. Current issue work covered coordinator failures, Wayland client handoff, and Parallels startup on Apple Silicon. The release itself spans authentication, lease recovery, cleanup, cloud quotas, desktops, and provider SDK updates.
That pace is both a health signal and an operating cost. A release can change an image, remote service, guest hook, or policy. Our 900-second timeout makes the breadth tangible. Pin releases, prove one provider end to end, and retain cleanup receipts until the resource is confirmed gone.
Choose Crabbox for an interactive cross-machine loop
Crabbox fits developers who repeatedly need to move current work onto the right machine and inspect what happened there. Its local-container path is concrete, the documentation states the trust limits, and Agent Skills let coding agents use the same commands. The source also built successfully in our sandbox in 333 seconds.
The incomplete test run prevents a blanket endorsement of this checkout, and cloud support should be adopted one provider at a time. Dagger suits pipeline-first automation, Coder suits governed workspaces, Daytona targets agent execution infrastructure, and Dev Container CLI covers a single container standard. Crabbox wins when warm boxes, incremental sync, and direct inspection are the missing workflow.

