*.boxd.sh URL. It’s the fork source for everything else: per-PR
previews, the Claude fix loop, and deploy-on-push all work by forking the
golden (~160 ms, app already running) and operating on the fork.
So this is step one — /boxd-setup-preview,
/boxd-setup-fix, and /boxd-setup-deploy
all require a golden and will point you back here if you don’t have one.
What boxd-setup-golden does
It reads your repo the way a developer would (AGENTS.md / CLAUDE.md, README,
the manifests), then on a fresh VM it:
- installs what the app needs (the base image already ships Node, Python+uv, Go,
Docker,
gh, …) and runs your install/build, - starts the app under something that survives a reboot (
pm2/systemd/docker compose) and points the proxy at the app port, - registers a headless-Chrome
chrome-devtoolsMCP (so the fix loop can take before/after screenshots), and - persists
ghauth on the VM so forks can open PRs from inside.
Set it up — two ways
The skill ships both to your laptop (with the boxd CLI) and baked into every boxd VM image. Pick whichever fits:- From your laptop
- Inside the golden (in-VM)
Install the boxd CLI (this also drops the skills), then run the skill from the
repo’s directory:It provisions a fresh VM and drives the install over the API (
boxd exec),
streaming progress back to you.Claude Code only for now — reach out if you want it packaged for Codex, OpenCode, or any other agent.
Next — layer on the platform
Each of these forks this golden, so set the golden up first:Per-PR previews
/boxd-setup-preview — comment /boxd-preview, get a forked URL.Fix on issue
/boxd-setup-fix — Claude fixes the issue in a fork, opens a PR.Deploy on push
/boxd-setup-deploy — push to main, the golden redeploys.