.agents/skills/run-e2e/SKILL.md
Run the full end-to-end test suite against a custom sandbox image deployed locally or on Blaxel. Use before merging significant changes to validate the complete sandbox-api binary, not just unit/integration tests.
npx skillsauth add blaxel-ai/sandbox run-e2eInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
E2E tests build a real Docker image from the current source, deploy it, and run the test suite against it. This validates the full binary, not just the in-process unit tests.
e2e/custom-sandbox/ — a Docker image that embeds the full sandbox-api source and builds it at image-build timee2e/simple-custom-sandbox/ — a leaner image that takes a pre-compiled binarye2e/scripts/ — Node.js tests run with npm run test:localmake e2e
This single command:
sandbox-dev containermake build-custom-sandbox)make run-custom-sandbox) on ports 8080-8083make test-custom-sandbox)Note: Watches for file descriptor leaks — the count before and after tests should not grow significantly.
make build-custom-sandbox
Copies sandbox-api/ into e2e/custom-sandbox/ and builds custom-sandbox:latest.
make run-custom-sandbox
Starts custom-sandbox:latest as sandbox-dev container with ports 8080-8083 exposed.
make test-custom-sandbox
Runs e2e/scripts/npm run test:local against the running container.
Deploy the custom sandbox to the Blaxel platform, wait for it to be DEPLOYED, then run tests:
make deploy-custom-sandbox
Then wait and test:
# This waits until status=DEPLOYED, then runs tests
# (embedded in make test-custom-sandbox)
make test-custom-sandbox
Compile for Linux first, then deploy:
make deploy-simple-custom-sandbox
This:
sandbox-api for linux/amd64e2e/simple-custom-sandbox/bl deployUseful for faster iteration when you don't need to rebuild the full Docker image.
sandbox-api/ compiles cleanly first with make testdocker logs sandbox-dev to see the error/healthlsof -p <pid> inside the containerbl command not found: Install the Blaxel CLI (brew install blaxel-ai/tap/bl or equivalent)development
Regenerate the OpenAPI reference documentation after adding, modifying, or removing API endpoints in sandbox-api. Run this whenever handler signatures, route paths, or swag annotations change.
development
Run the sandbox-api integration tests against a live API instance. Use after making changes to sandbox-api to verify all endpoints still work correctly.
testing
Deploy a Playwright sandbox (chromium or firefox) on Blaxel and run e2e tests against it. Use to validate that playwright hub images work end-to-end (browser connection, page navigation, DOM interaction) after changes.
development
Start the local sandbox-api development environment with hot-reload. Use when developing or testing changes to the sandbox-api Go code locally.