Sandbox Mounting
agentOS is a hybrid OS. Mount sandbox file systems and interact with them via bindings for heavier workloads. Use agentOS natively for lightweight tasks.
Local Beta
Run sandboxes directly on the local machine for development and testing.
| Category | Status | Package | Docs |
|---|---|---|---|
| Sandbox Mounting | Beta | sandbox-agent | Guide |
Install
npm install @rivet-dev/agentos-sandbox sandbox-agentAdd to agentOS
Mount a Local sandbox into the VM with @rivet-dev/agentos-sandbox.
import { agentOS, setup } from "@rivet-dev/agentos";
import { createSandboxFs, createSandboxBindings } from "@rivet-dev/agentos-sandbox";
import { SandboxAgent } from "sandbox-agent";
import { local } from "sandbox-agent/local";
// Start a Local-backed sandbox and mount it into the VM
const sandbox = await SandboxAgent.start({ sandbox: local() });
const vm = agentOS({
mounts: [{ path: "/home/agentos/sandbox", plugin: createSandboxFs({ client: sandbox }) }],
bindings: [createSandboxBindings({ client: sandbox })],
});
export const registry = setup({ use: { vm } });Docker Beta
Run sandboxes in Docker containers for isolated local execution.
| Category | Status | Package | Docs |
|---|---|---|---|
| Sandbox Mounting | Beta | sandbox-agent | Guide |
Install
npm install @rivet-dev/agentos-sandbox sandbox-agentAdd to agentOS
Mount a Docker sandbox into the VM with @rivet-dev/agentos-sandbox.
import { agentOS, setup } from "@rivet-dev/agentos";
import { createSandboxFs, createSandboxBindings } from "@rivet-dev/agentos-sandbox";
import { SandboxAgent } from "sandbox-agent";
import { docker } from "sandbox-agent/docker";
// Start a Docker-backed sandbox and mount it into the VM
const sandbox = await SandboxAgent.start({ sandbox: docker() });
const vm = agentOS({
mounts: [{ path: "/home/agentos/sandbox", plugin: createSandboxFs({ client: sandbox }) }],
bindings: [createSandboxBindings({ client: sandbox })],
});
export const registry = setup({ use: { vm } });E2B Beta
Run sandboxes on E2B's cloud infrastructure for secure, ephemeral environments.
| Category | Status | Package | Docs |
|---|---|---|---|
| Sandbox Mounting | Beta | sandbox-agent | Guide |
Install
npm install @rivet-dev/agentos-sandbox sandbox-agentAdd to agentOS
Mount a E2B sandbox into the VM with @rivet-dev/agentos-sandbox.
import { agentOS, setup } from "@rivet-dev/agentos";
import { createSandboxFs, createSandboxBindings } from "@rivet-dev/agentos-sandbox";
import { SandboxAgent } from "sandbox-agent";
import { e2b } from "sandbox-agent/e2b";
// Start a E2B-backed sandbox and mount it into the VM
const sandbox = await SandboxAgent.start({ sandbox: e2b() });
const vm = agentOS({
mounts: [{ path: "/home/agentos/sandbox", plugin: createSandboxFs({ client: sandbox }) }],
bindings: [createSandboxBindings({ client: sandbox })],
});
export const registry = setup({ use: { vm } });Daytona Beta
Run sandboxes on Daytona's managed development environments.
| Category | Status | Package | Docs |
|---|---|---|---|
| Sandbox Mounting | Beta | sandbox-agent | Guide |
Install
npm install @rivet-dev/agentos-sandbox sandbox-agentAdd to agentOS
Mount a Daytona sandbox into the VM with @rivet-dev/agentos-sandbox.
import { agentOS, setup } from "@rivet-dev/agentos";
import { createSandboxFs, createSandboxBindings } from "@rivet-dev/agentos-sandbox";
import { SandboxAgent } from "sandbox-agent";
import { daytona } from "sandbox-agent/daytona";
// Start a Daytona-backed sandbox and mount it into the VM
const sandbox = await SandboxAgent.start({ sandbox: daytona() });
const vm = agentOS({
mounts: [{ path: "/home/agentos/sandbox", plugin: createSandboxFs({ client: sandbox }) }],
bindings: [createSandboxBindings({ client: sandbox })],
});
export const registry = setup({ use: { vm } });Modal Beta
Run sandboxes on Modal's serverless cloud infrastructure.
| Category | Status | Package | Docs |
|---|---|---|---|
| Sandbox Mounting | Beta | sandbox-agent | Guide |
Install
npm install @rivet-dev/agentos-sandbox sandbox-agentAdd to agentOS
Mount a Modal sandbox into the VM with @rivet-dev/agentos-sandbox.
import { agentOS, setup } from "@rivet-dev/agentos";
import { createSandboxFs, createSandboxBindings } from "@rivet-dev/agentos-sandbox";
import { SandboxAgent } from "sandbox-agent";
import { modal } from "sandbox-agent/modal";
// Start a Modal-backed sandbox and mount it into the VM
const sandbox = await SandboxAgent.start({ sandbox: modal() });
const vm = agentOS({
mounts: [{ path: "/home/agentos/sandbox", plugin: createSandboxFs({ client: sandbox }) }],
bindings: [createSandboxBindings({ client: sandbox })],
});
export const registry = setup({ use: { vm } });Cloudflare Beta
Run sandboxes on Cloudflare's global network with Sandbox SDK containers.
| Category | Status | Package | Docs |
|---|---|---|---|
| Sandbox Mounting | Beta | sandbox-agent | Guide |
Install
npm install @rivet-dev/agentos-sandbox sandbox-agentAdd to agentOS
Mount a Cloudflare sandbox into the VM with @rivet-dev/agentos-sandbox.
import { agentOS, setup } from "@rivet-dev/agentos";
import { createSandboxFs, createSandboxBindings } from "@rivet-dev/agentos-sandbox";
import { SandboxAgent } from "sandbox-agent";
import { cloudflare } from "sandbox-agent/cloudflare";
// Start a Cloudflare-backed sandbox and mount it into the VM
const sandbox = await SandboxAgent.start({ sandbox: cloudflare() });
const vm = agentOS({
mounts: [{ path: "/home/agentos/sandbox", plugin: createSandboxFs({ client: sandbox }) }],
bindings: [createSandboxBindings({ client: sandbox })],
});
export const registry = setup({ use: { vm } });Vercel Beta
Run sandboxes on Vercel's edge and serverless platform.
| Category | Status | Package | Docs |
|---|---|---|---|
| Sandbox Mounting | Beta | sandbox-agent | Guide |
Install
npm install @rivet-dev/agentos-sandbox sandbox-agentAdd to agentOS
Mount a Vercel sandbox into the VM with @rivet-dev/agentos-sandbox.
import { agentOS, setup } from "@rivet-dev/agentos";
import { createSandboxFs, createSandboxBindings } from "@rivet-dev/agentos-sandbox";
import { SandboxAgent } from "sandbox-agent";
import { vercel } from "sandbox-agent/vercel";
// Start a Vercel-backed sandbox and mount it into the VM
const sandbox = await SandboxAgent.start({ sandbox: vercel() });
const vm = agentOS({
mounts: [{ path: "/home/agentos/sandbox", plugin: createSandboxFs({ client: sandbox }) }],
bindings: [createSandboxBindings({ client: sandbox })],
});
export const registry = setup({ use: { vm } });ComputeSDK Beta
Run sandboxes using the ComputeSDK compute provider.
| Category | Status | Package | Docs |
|---|---|---|---|
| Sandbox Mounting | Beta | sandbox-agent | Guide |
Install
npm install @rivet-dev/agentos-sandbox sandbox-agentAdd to agentOS
Mount a ComputeSDK sandbox into the VM with @rivet-dev/agentos-sandbox.
import { agentOS, setup } from "@rivet-dev/agentos";
import { createSandboxFs, createSandboxBindings } from "@rivet-dev/agentos-sandbox";
import { SandboxAgent } from "sandbox-agent";
import { computesdk } from "sandbox-agent/computesdk";
// Start a ComputeSDK-backed sandbox and mount it into the VM
const sandbox = await SandboxAgent.start({ sandbox: computesdk() });
const vm = agentOS({
mounts: [{ path: "/home/agentos/sandbox", plugin: createSandboxFs({ client: sandbox }) }],
bindings: [createSandboxBindings({ client: sandbox })],
});
export const registry = setup({ use: { vm } });Sprites Beta
Run sandboxes on Sprites' cloud sandbox infrastructure.
| Category | Status | Package | Docs |
|---|---|---|---|
| Sandbox Mounting | Beta | sandbox-agent | Guide |
Install
npm install @rivet-dev/agentos-sandbox sandbox-agentAdd to agentOS
Mount a Sprites sandbox into the VM with @rivet-dev/agentos-sandbox.
import { agentOS, setup } from "@rivet-dev/agentos";
import { createSandboxFs, createSandboxBindings } from "@rivet-dev/agentos-sandbox";
import { SandboxAgent } from "sandbox-agent";
import { sprites } from "sandbox-agent/sprites";
// Start a Sprites-backed sandbox and mount it into the VM
const sandbox = await SandboxAgent.start({ sandbox: sprites() });
const vm = agentOS({
mounts: [{ path: "/home/agentos/sandbox", plugin: createSandboxFs({ client: sandbox }) }],
bindings: [createSandboxBindings({ client: sandbox })],
});
export const registry = setup({ use: { vm } });