14 puntos por xguru 2026-02-20 | Aún no hay comentarios. | Compartir por WhatsApp
  • "Bash for Agents" creado por Vercel
  • Entorno virtual de Bash basado en TypeScript diseñado para agentes de IA que necesitan un entorno Bash seguro y aislado en sandbox
  • Funciona sobre un sistema de archivos virtual en memoria (InMemoryFs), en un entorno de ejecución aislado donde no es posible acceder al disco real
  • De forma predeterminada, el acceso a la red está bloqueado y, cuando hace falta, se admiten solicitudes de red seguras basadas en URLs permitidas mediante curl
  • Solo puede acceder al sistema de archivos proporcionado e incluye funciones para evitar bucles infinitos y ejecución recursiva
    • No admite la ejecución de binarios ni de WASM
  • Al usar la API, el aislamiento se hace por cada exec(), por lo que las variables de entorno, funciones y directorio de trabajo no se conservan entre llamadas (solo persiste el estado del sistema de archivos)
  • Permite una configuración detallada mediante argumentos de creación, como archivos iniciales, variables de entorno, directorio de trabajo y límites de ejecución
  • Admite carga diferida de archivos (Lazy file loading), por lo que el contenido puede generarse solo cuando se necesite mediante funciones síncronas o asíncronas
  • Con la función de comandos personalizados (defineCommand) se pueden agregar comandos custom basados en TypeScript
    • A través de CommandContext se ofrece acceso a fs, cwd, env, stdin y exec
  • Incluye 4 implementaciones de sistema de archivos
    • InMemoryFs: basado completamente en memoria
    • OverlayFs: lectura desde disco, escritura en memoria
    • ReadWriteFs: permite lectura y escritura en el disco real
    • MountableFs: monta varios sistemas de archivos por ruta para construir un espacio de nombres unificado
  • Compatible con bash-tool como herramienta de integración con AI SDK
    • Diseñado para que, junto con generateText(), los modelos de IA puedan ejecutar comandos Bash de forma segura
  • Ofrece una API compatible con Vercel Sandbox
    • La clase Sandbox puede usarse con la misma interfaz que @vercel/sandbox
    • Si hace falta, facilita cambiar a un sandbox real basado en VM
  • Incluye el CLI just-bash
    • Se ejecuta sobre OverlayFS y todo lo escrito se descarta de la memoria al finalizar
    • La opción --json permite salida programática de resultados
  • Incluye modo de shell interactivo (pnpm shell)
    • Por defecto permite acceso a internet; puede bloquearse con --no-network
  • Comandos compatibles
    • Incluye la mayoría de los comandos estándar de Bash para manipulación de archivos, procesamiento de texto, tratamiento de datos, compresión y red
    • También admite de forma opcional comandos de procesamiento de datos como jq, sqlite3 y python3 (basado en Pyodide)
    • Como funciones del shell, implementa la mayor parte de la sintaxis de Bash, incluidos pipes, redirecciones, condicionales, bucles, funciones, variables y patrones glob
  • La estructura de directorios predeterminada ofrece un entorno similar a Unix con /home/user, /bin, /usr/bin, /tmp, etc.
  • El control de acceso a red usa una lista blanca basada en URL y método HTTP
    • La opción dangerouslyAllowFullInternetAccess permite acceso total
  • El soporte para Python y SQLite se activa de forma opcional
    • Python basado en Pyodide y SQLite basado en WASM (sql.js) garantizan una ejecución completamente aislada en sandbox
  • Las funciones de protección de ejecución permiten definir límites como profundidad de funciones, cantidad de comandos y número de iteraciones de bucles
  • Licencia Apache-2.0

Aún no hay comentarios.

Aún no hay comentarios.