cloud-vm · git:20261109.2f1d005 · 2026-11-09 · sha256 afa778e7b1d9f5a1
cloud-vm git:20261109.2f1d005B
Immutable. This exact content never changes and is served at /api/v1/blob/afa778e7b1d9f5a1.
--- name: cloud-vm description: Provision a persistent cloud Linux VM in seconds with SSH — a real Ubuntu machine (default 4 vCPU / 8 GB / 51 GB disk) you can keep, resume, and snapshot. $0.036/h billed per second; the $20/mo plan includes about 555 default-size hours for that month. Use when the user wants a remote dev box, a cloud VM, or any always-available Linux machine. --- # Cloud VM (Box) Use this when the user asks for a **VM, a cloud machine, a remote box, or a Linux dev server** — something they SSH into, install things on, and return to later. A Box **persists**: stop it, resume it days later, disk intact (kept at least 14 days after a stop; save a snapshot to keep it longer). ## When to prefer Box - "Give me a Linux VM I can SSH into" → exactly this. - Must survive across sessions → resume from snapshot. - Needs to be reachable → public IPv6 per VM; SSH and HTTPS URLs also work over IPv4. The IP changes at each resume. - Budget-conscious → $0.036/h for 4 vCPU / 8 GB vs $0.331/h (E2B) and $0.476/h (Modal) at list price, for VMs that run full hours. Box costs at least $20/mo. Prefer another tool for: GPU (Modal), a static or dedicated IPv4, or a region outside Germany, Finland and France. ## Prereqs `curl -fsSL https://box.ascii.dev/install | sh`, then `export BOX_API_KEY=…` and `box login "$BOX_API_KEY" --json`. ## Recipe ```bash box_id="$(box new --json | jq -r 'select(.event == "ready") | .id')" box ssh "$box_id" # CLI provisions its key automatically box info "$box_id" --json # IP / connection details box stop "$box_id" --json # snapshot + archive box resume "$box_id" --json # restore later ``` ## Specs & billing Default size: 4 vCPU / 8 GB / 51 GB disk, x86_64, root Ubuntu 24.04, on bare-metal AMD Ryzen hosts (shared vCPUs). Public IPv6 + outbound IPv4. $0.036/h, per second; the $20 plan includes about 555 default-size hours for that month. Default 1 h auto-stop — use `box new --no-auto-stop` (paid plan) or `box extend <id> --hours N` (TTL ≤ 30 days). Disk-level snapshots only. $20 plan: 100 sandboxes at once, 200 starts a day included. Sources: https://docs.boat.dev/pricing, https://docs.boat.dev/limits.