For agent-run repo work.

Fresh computers on Cloudflare.

Cloudbox gives agents a clean place to clone a repo, run commands, verify the result, and return receipts plus one artifact for review.

import { generateText } from "ai";
import { createCloudbox } from "cloudbox/client";

const cloudbox = createCloudbox({ token: process.env.CLOUDBOX_API_TOKEN });

// 1. Boot a fresh computer with the repo already cloned.
const box = await cloudbox.boot({
  repo: "https://github.com/acoyfellow/cloudbox",
});

// 2. Your model decides by using tools that run in the box.
await generateText({
  model: yourModel,
  tools: box.tools(["shell", "read", "write"]),
  prompt: `
    grep for the demo empty state.
    improve the copy.
    run the tests.
    write HANDOFF.md with what changed.
  `,
});

// 3. Cloudbox returns the human artifact and receipts.
const proof = await box.submit("HANDOFF.md");
console.log(proof.artifact.content);
// receipts: grep → read → write → test → artifact

Your model runs wherever your agent runs. Cloudbox tools execute inside the fresh computer. Learn the agent pattern →

How runs work

Cloudbox turns a structured plan into a verified artifact.

Cloudbox makes agent work inspectable by forcing it through the same lifecycle: clean checkout, real Container, explicit tool calls, verification, and one returned artifact.

North star

A run you can steer while it is alive.

Cloudbox stays run-shaped: boot a clean repo computer, let an agent work, and close with receipts plus an artifact. The next scope is making that same run interactive — files and commands that a human or agent can steer together, an optional secure dev preview, and the same proof trail when the run ends.

Today

Clean repo runs, explicit commands, verification, artifacts, and shareable receipts.

Next

Keep a run open long enough to inspect files, execute follow-up commands, and start a dev process.

Still Cloudbox

The interaction ends as proof: receipts, diffs, artifacts, and a trail another person can review.

Learn next

Pick the path that matches how you want to use it.