
Ejecuta agentes de codificación en entornos aislados. Contrólalos mediante HTTP. Compatible con Claude Code, Codex, OpenCode y Amp.
Un servidor que se ejecuta dentro de tu sandbox. Tu aplicación se conecta remotamente para controlar Claude Code, Codex, OpenCode, Cursor, Amp o Pi — transmitiendo eventos, manejando permisos, gestionando sesiones.
Documentación — Referencia de API — Discord
Experimental: Gigacode — usa la TUI de OpenCode con cualquier agente de codificación.
Ejecutar agentes de codificación de forma remota es difícil. Los SDK existentes asumen ejecución local, SSH rompe el manejo de TTY y la transmisión en tiempo real, y cada agente tiene una API diferente. Construir desde cero significa reimplementar todo para cada agente de codificación.
Sandbox Agent resuelve tres problemas:
Los agentes de codificación necesitan sandboxes — No puedes permitir que la IA ejecute código arbitrario en tus servidores de producción. Los agentes de codificación necesitan entornos aislados, pero los SDK existentes asumen ejecución local. Sandbox Agent es un servidor que se ejecuta dentro del sandbox y expone HTTP/SSE.
Cada agente de codificación es diferente — Claude Code, Codex, OpenCode, Cursor, Amp y Pi tienen APIs, formatos de eventos y comportamientos propietarios. Cambiar de agente significa reescribir tu integración. Sandbox Agent proporciona una API HTTP única: escribe tu código una vez, cambia de agente con un cambio de configuración.
Las sesiones son efímeras — Las transcripciones del agente viven en el sandbox. Cuando el proceso termina, pierdes todo. Sandbox Agent transmite eventos en un esquema universal hacia tu almacenamiento. Persiste en Postgres, ClickHouse o Rivet. Reproduce después, audita todo.

Sandbox Agent actúa como adaptador universal entre tu aplicación cliente y varios agentes de codificación. Cada agente tiene su propio adaptador que maneja la traducción entre la API universal y la interfaz específica del agente.
Elige el método de instalación que mejor se adapte a tu caso de uso.
Instala skill con:
npx skills add rivet-dev/skills -s sandbox-agent
bunx skills add rivet-dev/skills -s sandbox-agent
Importa el SDK directamente en tu aplicación Node o navegador. Tipado completo y soporte de streaming.
Instalación
npm install [email protected]
bun add [email protected]
# Opcional: permite a Bun ejecutar scripts postinstall para binarios nativos (necesario para SandboxAgent.start()).
bun pm trust @sandbox-agent/cli-linux-x64 @sandbox-agent/cli-linux-arm64 @sandbox-agent/cli-darwin-arm64 @sandbox-agent/cli-darwin-x64 @sandbox-agent/cli-win32-x64
Configuración
Local (modo embebido):
import { SandboxAgent } from "sandbox-agent";
const client = await SandboxAgent.start();
Remoto (modo servidor):
import { SandboxAgent } from "sandbox-agent";
const client = await SandboxAgent.connect({
baseUrl: "http://127.0.0.1:2468",
token: process.env.SANDBOX_TOKEN,
});
Resumen de la API
const agents = await client.listAgents();
await client.createSession("demo", {
agent: "codex",
agentMode: "default",
});
await client.postMessage("demo", { message: "Hello from the SDK." });
for await (const event of client.streamEvents("demo", { offset: 0 })) {
console.log(event.type, event.data);
}
Documentación del SDK — Gestión de Sesiones
Ejecútalo como servidor HTTP y conéctate desde cualquier lenguaje. Despliega en E2B, Daytona, Vercel o tu propia infraestructura.
# Instálalo
curl -fsSL https://releases.rivet.dev/sandbox-agent/0.4.x/install.sh | sh
# Ejecútalo
sandbox-agent server --token "$SANDBOX_TOKEN" --host 127.0.0.1 --port 2468
Opcional: preinstala binarios de agentes (no es necesario; se instalarán de forma diferida en el primer uso si omites esto):
sandbox-agent install-agent --all
Para deshabilitar la autenticación localmente:
sandbox-agent server --no-token --host 127.0.0.1 --port 2468
Inicio rápido — Guías de despliegue
Instala el envoltorio CLI (opcional pero conveniente):
npm install -g @sandbox-agent/[email protected]
# Permite a Bun ejecutar scripts postinstall para binarios nativos.
bun add -g @sandbox-agent/[email protected]
bun pm -g trust @sandbox-agent/cli-linux-x64 @sandbox-agent/cli-linux-arm64 @sandbox-agent/cli-darwin-arm64 @sandbox-agent/cli-darwin-x64 @sandbox-agent/cli-win32-x64
Crea una sesión y envía un mensaje:
sandbox-agent api sessions create my-session --agent codex --endpoint http://127.0.0.1:2468 --token "$SANDBOX_TOKEN"
sandbox-agent api sessions send-message my-session --message "Hello" --endpoint http://127.0.0.1:2468 --token "$SANDBOX_TOKEN"
sandbox-agent api sessions send-message-stream my-session --message "Hello" --endpoint http://127.0.0.1:2468 --token "$SANDBOX_TOKEN"
También puedes usar npx de la siguiente manera:
npx @sandbox-agent/[email protected] --help
bunx @sandbox-agent/[email protected] --help
Depura sesiones y eventos con la UI integrada del Inspector (ej., http://localhost:2468/ui/).

Explora la API — Ver especificación
A menudo necesitas usar tus tokens API personales para probar agentes en sandboxes:
sandbox-agent credentials extract-env --export
Esto imprime variables de entorno para tus claves API de OpenAI/Anthropic/etc para probar con el SDK de Sandbox Agent.
No, son complementarios. AI SDK es para construir interfaces de chat y llamar a LLMs. Este SDK es para controlar agentes de codificación autónomos que escriben código y ejecutan comandos. Usa AI SDK para tu UI, usa este cuando necesites que un agente realmente codifique.
Claude Code, Codex, OpenCode, Cursor, Amp y Pi. El SDK normaliza sus APIs para que puedas cambiar entre ellos sin modificar tu código.
Este SDK no maneja la persistencia de datos de sesión. Los eventos se transmiten en un esquema JSON universal que puedes persistir en cualquier lugar. Consulta Gestión de sesiones para patrones con Postgres o Rivet Actors.
Ambos. Ejecútalo localmente para desarrollo, despliéguelo en E2B, Daytona o Vercel Sandboxes para producción.
El servidor es un único binario de Rust que se ejecuta en cualquier lugar con una instalación curl. Si tu plataforma puede ejecutar binarios Linux (Docker, VMs, etc.), funciona. Consulta las guías de despliegue para E2B, Daytona y Vercel Sandboxes.
Sí. Usa sandbox-agent credentials extract-env para extraer las claves API de tus configuraciones locales de agentes (Claude Code, Codex, OpenCode, Amp, Pi) y pásalas al entorno del sandbox.
Rust nos da un único binario estático, inicio rápido y uso de memoria predecible. Esto facilita su ejecución dentro de sandboxes o en CI sin tener que distribuir un runtime grande, como Node.js.
Puedes para desarrollo. Pero en producción necesitas aislamiento. Los agentes de codificación ejecutan código arbitrario, eso no puede ocurrir en tus servidores. Los sandboxes proporcionan el aislamiento; este SDK proporciona la API HTTP para controlar agentes de codificación de forma remota.
Los SDK oficiales asumen ejecución local. Generan procesos y esperan terminales interactivas. Este SDK ejecuta un servidor dentro de un sandbox al que te conectas a través de HTTP: diseñado para control remoto desde el principio.
Los agentes de codificación esperan terminales interactivas con manejo adecuado de TTY. SSH con comandos encadenados rompe las confirmaciones de herramientas, la salida en streaming y los flujos de humano en el bucle. El SDK maneja todo esto a través de una API HTTP limpia.
| Componente | Descripción |
|---|
| Servidor | Demonio Rust (sandbox-agent server) que expone la API HTTP + SSE |
| SDK | Cliente TypeScript con modos embebido y servidor |
| Inspector | UI integrada para inspeccionar sesiones y eventos |
| CLI | sandbox-agent (mismo binario, más envoltorio npm) que refleja los endpoints HTTP |