Read when:
- choosing
provider: ascii-box; - configuring the ASCII Box API endpoint or workdir;
- changing
internal/providers/asciibox.
ASCII Box provides Ubuntu sandbox VMs. Crabbox uses the
documented box --json CLI as the control plane, lets box ssh prepare the
CLI-managed SSH key, and then runs normal Crabbox sync and commands over SSH.
The provider does not depend on private exec, upload, or command-stream REST
endpoints.
Use ASCII Box when commands should run in ASCII-managed Ubuntu sandboxes through
the box CLI's SSH endpoint. Use a delegated provider such as Upstash Box,
Modal, E2B, Islo, or Cloudflare when the provider owns command execution instead
of exposing SSH.
- Create an ASCII Box account at https://box.ascii.dev.
- Export the API key as
ASCII_BOX_API_KEYorCRABBOX_ASCII_BOX_API_KEY. - Install the official
boxCLI. Crabbox discovers the platform-specific config path throughbox status --json, writes a private config from the API key under its state directory, and does not require a pre-existingbox login.
crabbox warmup --provider ascii-box
crabbox run --provider ascii-box -- pnpm test
crabbox run --provider ascii-box --id blue-lobster --shell 'pnpm install && pnpm test'
crabbox status --provider ascii-box --id blue-lobster
crabbox stop --provider ascii-box blue-lobsterexport ASCII_BOX_API_KEY=...CRABBOX_ASCII_BOX_BASE_URL or asciiBox.baseUrl can override the default
https://ascii.dev. Custom endpoints require HTTPS, except literal loopback
hosts may use HTTP. Userinfo, queries, and fragments are rejected before the
API key is written to Box CLI configuration or passed to the CLI.
provider: ascii-box
target: linux
asciiBox:
baseUrl: https://ascii.dev
cliPath: box
workdir: /home/user/crabboxProvider flags:
--ascii-box-base-url
--ascii-box-cli
--ascii-box-workdir
Environment overrides:
CRABBOX_ASCII_BOX_API_KEY / ASCII_BOX_API_KEY
CRABBOX_ASCII_BOX_BASE_URL / ASCII_BOX_BASE_URL
CRABBOX_ASCII_BOX_CLI / BOX_CLI
CRABBOX_ASCII_BOX_HOME
CRABBOX_ASCII_BOX_WORKDIR
crabbox warmup --provider ascii-boxcreates a Box throughbox new --json, stores the returned Box id in a local lease claim, prepares the SSH key withbox ssh <id> -- true, waits for SSH, and keeps the Box untilcrabbox stop. The default SSH key lives in the private Box CLI home (CRABBOX_ASCII_BOX_HOME, otherwise Crabbox state).crabbox run --provider ascii-boxprovisions a Box for one run, or reuses an existing lease/slug/id, then uses the standard SSH sync and run path.crabbox statusresolves the local lease claim or raw Box id and reads Box state throughbox info --json.crabbox stopreleases the Box withbox stop --json, removes the Box record withbox delete --json, and removes the local lease claim. If the service temporarily refuses deletion until a recent snapshot exists, Crabbox shortens the Box TTL, waits for its managed stop transition, and retries deletion for up to two minutes.
--class,--type, image, size, and keep-alive Box options are not exposed because the public CLI lifecycle surface does not document them.- Desktop/VNC/code features are not advertised through Crabbox for this provider. Use the official Box tools directly for interactive sessions.