Send the project
Inspect its runtime, choose a provider and capture a project snapshot. Exclusions keep configured private and generated files out of the upload.
COMPUTE THAT FOLLOWS YOUR WORK
Give your project a box. Run its build, tests or a coding worker on local and cloud compute. Bring the results back to the harness you already use.
CLI · stdio MCP · HTTP API · local execution monitor
01 / THE ROUND TRIP
Reason and edit on your workstation. Move the work that needs a separate environment, CPU or memory into a box.
Inspect its runtime, choose a provider and capture a project snapshot. Exclusions keep configured private and generated files out of the upload.
Execute a command, run project tests, build an artifact, or delegate a task to our guest coding worker with host model relay.
Retrieve requested files and patches. Read exit codes, command output, bounded model exchanges and a hash-linked execution journal.
02 / PICK YOUR ENTRY POINT
A coding client, a terminal or your application can use the same job contract. These are command examples, not a live session.
node bin/box-harness.mjs run --project /absolute/project \ --provider e2b --action build --install --artifact dist
The returned job ID links status, logs and retrieved output. Match the artifact path to your project.
03 / KNOW WHAT HAPPENED
Find jobs by box or caller task ID. Inspect the request, requested model and effort, observed provider details, operation timings, outputs and cleanup.
Missing measurements stay unknown. Captures are bounded and redacted. Hashes help detect changed files; they are not signed execution attestation.
See the history commands ↗04 / CHOOSE THE ENVIRONMENT
Available source, an implemented adapter and a live-qualified workflow are different things. Check installed capabilities for the current details.
Local VM and cloud execution paths have live proofs. Local Firecracker needs Linux KVM or configured WSL2 assets and a suitable guest image.
Credentials, targets and operation coverage need qualification. Generic SSH connects to existing Linux hosts; it does not provision a cloud fleet.
Runpod/GPU allocation and other native cloud providers remain separate work. An OpenAI-compatible model endpoint connects to an already running model service.
The current controller supports four active jobs per process and bounded local history. It does not provide a distributed scheduler, tenant isolation or automatic agent recovery after a controller restart. Account lifetime budgeting and cross-box continuation remain planned.
05 / MAKE IT YOURS
BoxFleet is proprietary software for authorized users. Source builds need Node ≥22.19, Go ≥1.25 and Git. Releases include the Go core and still require Node. This repository currently requires GitHub access; no public npm publication is claimed.
After building, open guided setup. Keep its terminal running and paste the terminal’s Connection code into the local app. This temporary code connects the browser; enter provider and optional AI keys separately after connecting.
Setup guides provider selection, explicit key storage, MCP registration and an optional first box test with cleanup. Review possible provider charges before starting the test.
Open the repository ↗Follow the first-use guide ↗git clone https://github.com/JacquesGariepy/boxfleet.git cd boxfleet npm ci --ignore-scripts npm run setup node bin/box-harness.mjs setup
Cloud runs can incur provider charges. Select a provider explicitly and verify your account limits.
FIND YOUR WORK AGAIN
node bin/box-harness.mjs jobs --box BOX_ID node bin/box-harness.mjs execution --id job-UUID node bin/box-harness.mjs trace --id job-UUID --kind model --round 1
Run node bin/box-harness.mjs dashboard in an interactive terminal to open the local monitor. Paste the temporary token from that terminal into the monitor; it is never saved. Automation uses an externally configured controller token. Reports and retrieved files remain on the launching host after box deletion. History scans are bounded; retain job IDs in your caller's task records.