Skip to content

Quickstart

Start a sandbox in the browser, from the SDK, or on your own Cloudflare account. Each route gives you the same shell, disk, and toolchains.

nimbus — quickstart

Live sandbox — connecting…

The terminal above is a live sandbox running real node on workerd’s V8, first a prime sieve, then a 256-color banner. Launch at nimbus-os.dev creates the same session. The /s/<id>/ URL is the session. Bookmark it and the files persist between visits. An idle session costs nothing. Type your own commands when the demo finishes. npm install, git clone, and python all work.

Try this first:

Terminal window
node --version # workerd nodejs_compat, the same V8 as Workers
git clone https://github.com/AshishKumar4/Markflow
cd Markflow && npm install # real npm, live registry
npm run dev # vite with HMR, previewed in the iframe

From code, create one sandbox per task. Create to first command takes ~0.7 s median (benchmarks). Use a colocated Durable Object binding inside your own Worker, or connect to any deployment with a token.

Terminal window
import { Nimbus } from '@nimbus-sh/sdk';
export default {
async fetch(_request: Request, env: Env) {
const box = Nimbus.fromEnv(env).sandbox('job-123', { tenant: 'acme', subject: 'agent' });
return Response.json(await box.exec('python -c "print(2 + 2)"'));
},
};

To run Nimbus on your own Cloudflare account, scaffold a Worker and deploy it:

Terminal window
npx create-nimbus-app my-nimbus-worker && cd my-nimbus-worker && npm install
CLOUDFLARE_ACCOUNT_ID=<account-id> npx @nimbus-sh/cli setup cloudflare --name my-nimbus-worker
npx wrangler secret put JWT_SECRET
npx wrangler deploy

setup cloudflare creates the R2 buckets and seeds the Python, Ruby, and clang runtimes. Embed Nimbus in a Worker has the details. The hosted demo is only for evaluation. It has no SLA, may be reset, and is not a place for secrets.