run-untrusted-code · git:20260613.95ab83b · 2026-06-13 · sha256 d06e6ce5e5d23aa0
run-untrusted-code git:20260613.95ab83bB
Immutable. This exact content never changes and is served at /api/v1/blob/d06e6ce5e5d23aa0.
--- name: run-untrusted-code description: Run AI-generated or untrusted code safely in a disposable cloud VM instead of on the host, then delete it. Full root Ubuntu with zero blast radius on the user's machine; per-second billing means a throwaway run costs cents. Use whenever you'd execute code you don't fully trust. --- # Run untrusted code (Box) Use this right before **executing code you generated or fetched** when running it locally would be risky: shell scripts, scraped snippets, dependency installs, anything with side effects. Pattern: **create → run → delete**, so nothing touches the host. ## Why Box - **Isolation** — a separate VM; the host filesystem and network are never exposed. - **Disposable & cheap** — `box delete` when done; per-second billing, a run costs cents. - **Real machine** — generated code that needs `pip install`, subprocesses, or Docker actually works. Prefer another tool for: thousands of tiny <500 ms runs (E2B/Modal microVMs). ## Prereqs `curl -fsSL https://box.ascii.dev/install | sh`, then `box login "$BOX_API_KEY" --json`. ## Recipe ```bash box_id="$(box new --json | jq -r 'select(.event == "ready") | .id')" trap 'box delete "$box_id" --json' EXIT # never leak a VM box ssh "$box_id" -- "mkdir -p /run && cat > /run/main.sh" < ./main.sh box ssh "$box_id" -- "cd /run && timeout 120 bash main.sh" ``` Always wrap in `timeout` and delete in a trap/finally. ## Limits EU-only; disk-level snapshots; 100 active VMs soft cap.