Vercel Sandbox: ¿Ejecutar código PHP, Node y Go de forma segura?
5 min de lectura

Vercel Sandbox: ¿Ejecutar código PHP, Node y Go de forma segura?

991 palabras

Vercel ha anunciado la disponibilidad general de Vercel Sandbox, una capa de ejecución diseñada específicamente para agentes de IA. Pero más allá del hype de los agentes, hay una pregunta interesante: ¿puede servirnos para ejecutar código de forma segura en diferentes lenguajes como PHP, Node o Go?

¿Qué es Vercel Sandbox?

Vercel Sandbox proporciona microVMs Linux bajo demanda. Cada sandbox está aislado, con su propio sistema de archivos, red y espacio de procesos. Obtienes acceso sudo, gestores de paquetes y la capacidad de ejecutar los mismos comandos que ejecutarías en una máquina Linux.

La clave aquí es el aislamiento completo. Cada sandbox es una máquina virtual Firecracker (la misma tecnología que usa AWS Lambda) que se inicia en fracciones de segundo, ejecuta código y desaparece cuando termina la tarea.

import { Sandbox } from '@vercel/sandbox';

const sandbox = await Sandbox.create();

await sandbox.runCommand({
  cmd: 'node',
  args: ["-e", 'console.log("Hello from Vercel Sandbox!")'],
  stdout: process.stdout,
});

await sandbox.stop();

El problema que resuelve

Los agentes de IA funcionan diferente a los humanos. Necesitan:

  • Entornos que se inicien en segundos
  • Aislamiento completo para código no confiable
  • Entornos efímeros que existen solo el tiempo necesario
  • Snapshots para restaurar entornos complejos instantáneamente
  • Pricing por CPU activa, no por tiempo inactivo

Vercel procesa más de 2.7 millones de despliegues al día. Cada uno inicia una microVM aislada, ejecuta código y desaparece, a menudo en segundos. Sandbox lleva esa misma infraestructura a los agentes.

¿Se puede usar para PHP?

La respuesta corta es . Como Sandbox es una microVM Linux completa con sudo, puedes instalar PHP:

# Instalar PHP en el sandbox
apt-get update && apt-get install -y php php-cli

# Ejecutar código PHP
php -r "echo 'Hello from PHP!';"

Sin embargo, hay una limitación importante: Sandbox no es persistente. Cada vez que creas un nuevo sandbox, empiezas desde cero. Tendrías que instalar PHP cada vez.

La solución son los snapshots: una vez que tienes un entorno configurado con PHP, puedes guardarlo como snapshot y restaurarlo instantáneamente en ejecuciones futuras.

¿Y para Node.js?

Node.js es el caso de uso más natural, ya que es el runtime que Vercel usa por defecto. Probablemente Node ya viene preinstalado en las imágenes base de Sandbox:

await sandbox.runCommand({
  cmd: 'node',
  args: ['--version'],
  stdout: process.stdout,
});

await sandbox.runCommand({
  cmd: 'npm',
  args: ['install'],
  stdout: process.stdout,
});

Para Node, Sandbox es especialmente útil porque puedes:

  • Clonar un repositorio
  • Instalar dependencias con npm/yarn/pnpm
  • Ejecutar tests
  • Ejecutar scripts
  • Hacer cleanup y desaparecer

¿Y binarios en Go?

Aquí es donde se pone interesante. Go compila a binarios estáticos, lo que lo hace perfecto para este entorno:

# Instalar Go
apt-get install -y golang-go

# O copiar un binario compilado previamente
./mi-programa-go

La ventaja de Go es que no necesitas instalar dependencias en runtime. El binario es autocontenido. Puedes compilar en tu máquina y copiar el binario al sandbox, o compilar dentro del sandbox si necesitas.

Casos de uso prácticos

Más allá de los agentes de IA, veo varios casos de uso interesantes:

1. Ejecución de código no confiable

Si necesitas ejecutar código enviado por usuarios (como en un editor de código online), Sandbox ofrece aislamiento perfecto. El usuario puede ejecutar lo que quiera, pero está confinado a su microVM.

2. Testing en entornos limpios

Para tests de integración que necesitan un entorno limpio cada vez, Sandbox es ideal. No hay “leakage” entre ejecuciones.

3. Procesamiento paralelo

Puedes crear múltiples sandboxes en paralelo para procesar tareas independientes. Cada uno está aislado, no hay contención de recursos.

4. Scripts de maintenance

Necesitas ejecutar un script de mantenimiento que requiere sudo? Sandbox te da acceso root sin comprometer tu infraestructura principal.

Limitaciones a tener en cuenta

Ephemeral por diseño

Los sandboxes están diseñados para ser efímeros. Si necesitas persistencia, tendrás que:

  • Usar volúmenes montados (si está disponible)
  • Guardar estado en almacenamiento externo (S3, base de datos, etc.)
  • Usar snapshots para guardar/restaurar estado

Cold start

Aunque el cold start es rápido (sub-segundo), no es instantáneo. Para tareas críticas de latencia, puede que no sea suficiente.

Costo

El pricing es por CPU activa. Si tienes tareas que corren por largo tiempo, puede que no sea económico comparado con una VM tradicional.

Red

Los sandboxes tienen su propia red aislada. Si necesitas acceso a recursos específicos, tendrás que configurar la red accordingly.

Comparado con alternativas

vs Docker

Docker también te da aislamiento, pero Sandbox es más ligero (Firecracker vs containers) y está optimizado para arranque rápido. Para trabajo épimero, Sandbox gana.

vs AWS Lambda

Lambda es serverless, pero está limitado a runtimes específicos y tiene más restricciones. Sandbox te da acceso root completo a Linux.

vs VMs tradicionales

VMs tradicionales son más persistentes pero tardan minutos en arrancar. Sandbox arranca en segundos.

¿Vale la pena?

Depende de tu caso de uso:

Sí, si:

  • Necesitas ejecutar código no confiable de forma segura
  • Tus tareas son épimeras y duran segundos/minutos
  • Necesitas aislamiento completo
  • Te beneficia el paralelismo
  • No quieres gestionar infraestructura

No, si:

  • Necesitas persistencia de estado
  • Tus tareas corren por largo tiempo
  • El cold start es un problema
  • El costo por CPU activa es prohibitivo

Mi opinión personal

Vercel Sandbox es interesante, pero creo que el hype actual viene del mundo de los agentes de IA. Para el desarrollador promedio, probablemente no sea la solución a menos que tengas un caso de uso muy específico.

Dicho esto, la tecnología detrás (Firecracker microVMs) es sólida y Vercel ha demostrado que la pueden escalar a millones de despliegues diarios. Si encaja con tu caso de uso, puede ser una herramienta muy potente.

Para ejecutar PHP, Node o Go específicamente, yo miraría primero alternativas más simples:

  • PHP: Docker containers o Lambdas con PHP runtime
  • Node: Serverless functions (Vercel/AWS Lambda) o Docker
  • Go: Binarios compilados desplegados como containers o Lambda custom runtimes

Sandbox brilla cuando necesitas la combinación de aislamiento + ephemeral + Linux completo. Si no necesitas esas tres cosas, probablemente haya una solución más simple.


Artículo original: Vercel Sandbox is Now Generally Available Documentación: Vercel Sandbox Docs SDK: @vercel/sandbox

Comentarios

Últimas Entradas

5 min

952 palabras

Vercel has announced the general availability of Vercel Sandbox, an execution layer designed specifically for AI agents. But beyond the AI agent hype, there’s an interesting question: can it be useful for running code safely in different languages like PHP, Node, or Go?

What is Vercel Sandbox?

Vercel Sandbox provides on-demand Linux microVMs. Each sandbox is isolated, with its own filesystem, network, and process space. You get sudo access, package managers, and the ability to run the same commands you’d run on a Linux machine.

9 min

1840 palabras

Si estás usando herramientas como Claude Code, GitHub Copilot Workspace o similares, habrás notado que hay una jerga técnica que va más allá de simplemente “chatear con la IA”. Hablo de términos como rules, commands, skills, MCP y hooks.

Estos conceptos son la arquitectura que hace que los agentes de IA sean realmente útiles para desarrollo de software. No son solo palabras bonitas de marketing — cada uno cumple una función específica en cómo el agente trabaja.

Vamos a desglosarlos uno por uno de forma clara.

7 min

1369 palabras

Hace poco, Addy Osmani publicó un artículo que me dio mucho en qué pensar: “Self-Improving Coding Agents”. La idea es simple pero potente: agentes que no solo ejecutan tareas, sino que mejoran su propio rendimiento con el tiempo.

Esto no es ciencia ficción. Es algo que está pasando ya, ahora mismo, en 2026. Y tiene implicaciones profundas para el futuro del desarrollo de software y, por extensión, para todas las profesiones.

11 min

2330 palabras

El futuro de las compras está aquí, y Walmart está liderando una revolución silenciosa que cambiará para siempre la forma en que interactuamos con el retail. Mientras muchas empresas siguen experimentando con ChatGPT y herramientas básicas de IA generativa, el gigante de Arkansas ha dado un salto cuántico hacia la IA Agéntica (Agentic AI), desarrollando sistemas autónomos que no solo recomiendan productos, sino que actúan, deciden y ejecutan tareas completas por sí mismos.

1 min

106 palabras

Options Pattern in Golang

Option pattern is a functional programming pattern that is used to provide optional arguments to a function that can be used to modify its behavior.

How to create a simple event streaming in Laravel?

Event streams provide you with a way to send events to the client without having to reload the page. This is useful for things like updating the user interface in real-time changes are made to the database.

1 min

106 palabras

Options Pattern in Golang

Option pattern is a functional programming pattern that is used to provide optional arguments to a function that can be used to modify its behavior.

How to create a simple event streaming in Laravel?

Event streams provide you with a way to send events to the client without having to reload the page. This is useful for things like updating the user interface in real-time changes are made to the database.