Sandboxes de máquinas virtuales KVM en menos de un milisegundo para ejecutar código de agentes de IA, creados mediante bifurcación de una snapshot preinicializada de Firecracker con memoria copy-on-write.
deeplethe/sandstorm
Sandboxes microVM al estilo fork para agentes de IA: los procesos hijos se bifurcan mediante copy-on-write desde un padre Firecracker preparado, con aislamiento KVM y BRANCH de VMs en ejecución.
Alternativa open source a:E2B
- Estrellas
- 5,451
- Forks
- 414
- Issues abiertos
- 8
- Último commit
- hace 6 días
¿Qué es?
forkd es un runtime de sandbox microVM basado en Firecracker, pensado para cargas de trabajo en las que muchos sandboxes efímeros de agentes de IA necesitan el mismo entorno preparado. Una VM padre se inicia una vez, carga el runtime y sus dependencias, y se pausa para crear una instantánea. Cada proceso hijo es un proceso Firecracker independiente que asigna la imagen de memoria del padre con MAP_PRIVATE; así, los hijos comparten memoria residente mediante copy-on-write y se inician en unos 100 ms, en lugar de arrancar el kernel desde cero.
Cada hijo mantiene el aislamiento de hardware mediante KVM y tiene su propio espacio de nombres de red y límite de memoria cgroup v2. forkd también ofrece BRANCH, que pausa un sandbox en ejecución, toma una instantánea de su estado en curso y lo reanuda; el modo live reduce el tiempo de pausa del origen. Las instantáneas se pueden encadenar como diferencias, empaquetar en archivos portátiles y descargar desde un hub.
El proyecto ofrece un daemon con una API REST, una CLI, SDK de Python y TypeScript, y un servidor MCP para clientes como Claude Desktop y Cursor. Requiere un host Linux x86_64 con KVM.
Funciones clave
- 01Crea microVM hijas a partir de una instantánea de un padre preparado, compartiendo memoria mediante copy-on-write.
- 02Ejecuta cada hija en su propio proceso Firecracker con respaldo de KVM y un espacio de nombres de red independiente.
- 03Permite usar BRANCH para tomar una instantánea de un sandbox activo y reanudarlo, incluido un modo live con una pausa más corta.
- 04Encadena instantáneas de diferencias y las empaqueta o desempaqueta como archivos portátiles.
- 05Ofrece una API REST, una CLI, SDK de Python y TypeScript, y un servidor MCP.
- 06Expone métricas de Prometheus y un registro de auditoría JSON de solo anexado.
Casos de uso
- Ejecutar sesiones de intérprete de código en las que cada solicitud obtiene un sandbox nuevo con bibliotecas precargadas.
- Ejecutar cientos de clonaciones de repositorios o pruebas en paralelo para evaluar agentes.
- Ofrecer ejecución de código por usuario en un host Linux autogestionado con aislamiento KVM.
- Bifurcar el estado del sandbox de un agente en ejecución para probar varias alternativas de los siguientes pasos.
Inicio rápido
- 1
Instala forkd siguiendo la sección de instalación del README
- 2
Crea 3 forks de sandbox a partir de una etiqueta de snapshot
forkd fork --tag py-pandas -n 1
Antes de usarlo
- Requiere Linux con KVM; no se puede ejecutar en macOS ni Windows.
- Live BRANCH requiere Linux 5.7 o posterior, un fork de Firecracker incluido en el proyecto y userfaultfd habilitado.
- El proyecto está en la versión v0.x, por lo que las interfaces pueden cambiar entre versiones.
En colecciones
Temas
Preguntas frecuentes
- ¿Qué es sandstorm?
- Sandboxes microVM al estilo fork para agentes de IA: los procesos hijos se bifurcan mediante copy-on-write desde un padre Firecracker preparado, con aislamiento KVM y BRANCH de VMs en ejecución. forkd es un runtime de sandbox microVM basado en Firecracker, pensado para cargas de trabajo en las que muchos sandboxes efímeros de agentes de IA necesitan el mismo entorno preparado. Una VM padre se inicia una vez, carga el runtime y sus dependencias, y se pausa para crear una instantánea. Cada proceso hijo es un proceso Firecracker independiente que asigna la imagen de memoria del padre con MAP_PRIVATE; así, los hijos comparten memoria residente mediante copy-on-write y se inician en unos 100 ms, en lugar de arrancar el kernel desde cero.
- ¿sandstorm es gratuito? ¿Qué licencia tiene?
- sandstorm es open source bajo la licencia Apache-2.0. Revisa los términos de la licencia antes de usarlo en productos comerciales.
- ¿sandstorm sigue mantenido?
- Mantenimiento activo. El último commit de sandstorm fue el 1 nov 2026.
- ¿Para qué puedo usar sandstorm?
- Ejecutar sesiones de intérprete de código en las que cada solicitud obtiene un sandbox nuevo con bibliotecas precargadas. Ejecutar cientos de clonaciones de repositorios o pruebas en paralelo para evaluar agentes. Ofrecer ejecución de código por usuario en un host Linux autogestionado con aislamiento KVM. Bifurcar el estado del sandbox de un agente en ejecución para probar varias alternativas de los siguientes pasos.
- ¿Cómo se instala sandstorm?
- Instala forkd siguiendo la sección de instalación del README Crea 3 forks de sandbox a partir de una etiqueta de snapshot: forkd fork --tag py-pandas -n 1
- ¿Dónde consigo sandstorm?
- El código fuente y las instrucciones de instalación están en GitHub: https://github.com/deeplethe/sandstorm
Resumen generado por IA a partir del README del proyecto. Las estadísticas de GitHub se actualizan a diario.
Proyectos relacionados
Plataforma de sandbox que ejecuta código de agentes y usuarios en microVM de Firecracker aisladas, controlada mediante una API HTTP.
Servicio de sandbox de código abierto para agentes de IA que ejecuta cada carga de trabajo en una MicroVM aislada por hardware, compatible con E2B SDK y con un arranque inferior a 60 ms.
Plataforma de sandboxes autohospedada y compatible con la API de E2B; ejecuta cada sandbox en una microVM KVM o HVF con aislamiento por hardware.
Runtime de código abierto para contenedores y máquinas virtuales en macOS, escrito en Rust, con motor compatible con Docker, microVM aisladas para agentes de IA, Kubernetes nativo y máquinas virtuales Linux.
CLI para Linux que ejecuta agentes de IA en microVM efímeras, con hosts permitidos en la red e inyección de secretos desde el host.