Running Paseo in Sandbox currently requires installing and operating a local CLI. This adds a private web launcher that owners deploy to their Vercel account, then use to start Codex, Claude Code, OpenCode or Pi and copy a pairing link into Paseo.
The Deploy Button provisions a private Blob store and prompts for an owner key and AI Gateway key. Hosts use the universal managed image with the existing compatible agent pins. The launcher supports stop, resume and explicit deletion, preserves host identity on retries, and stores state with conditional writes to prevent overlapping operations. Commands run after the initiating response within a bounded Function invocation; interrupted operations expose a safe manual retry.
Verified on an isolated deployment:
- All four agents start and pass provider diagnostics.
- Concurrent starts return one 202 and one 409; anonymous and cross-origin requests are rejected.
- A clean browser pairs with Codex, creates three files and runs two passing tests. After stop/resume, the original pairing link reconnects with the conversation and files intact; a browser follow-up reruns both tests successfully.
- 108 CLI tests and 28 web tests pass, along with typechecks, package-install smoke test, docs checks and the production build.
- Delete removes all four owned sandboxes; snapshot metadata confirms deletion and the launcher returns to four empty slots.
- Two consecutive invalid-key starts both fail before creation, release their leases immediately, and leave no cloud sandbox. The repeated-failure regression also passes locally.
- Large private Blob records retain strong ETags for conditional writes; the compressed-response failure is covered by a live regression probe.
Includes the pairing-instructions correction from #1. Companion guide: vercel/front#86464.
Merge blockers: the signed-in Deploy Button import UI and final full-site docs preview remain unverified. The button targets the paseo-web-launcher-20260916 template branch, which mirrors this PR, until the launcher merges to main. Account signup, desktop/mobile clients and interrupted agent-turn continuation are outside this verification.
The reviewed runtime is deployed and passed a production startup/cleanup smoke test. A clean clone installs and builds successfully. The final follow-up changes only the Deploy Button URL to a slash-free template branch.
Review the following changes in direct dependencies. Learn more about Socket for GitHub.
Security
View full report