Cómo construir agentes de IA que no se rompan a sí mismos con Sprites de Fly

Fuentes: Building Agents that Don't Break Themselves

Construir agentes de inteligencia artificial es entretenido, pero reconstruirlos cuando se autodestruyen, no tanto. Este artículo de Fly presenta un patrón de arquitectura para agentes que ejecutan comandos de shell sin poner en riesgo su propio entorno ni el del usuario.

El problema central es bien conocido: los agentes necesitan acceso a una shell para ejecutar tareas útiles (correr tests, aplicar migraciones, instalar dependencias), pero esa misma shell les permite borrar archivos críticos. Un comando mal interpretado puede llevar a un agente a borrar su propio toolchain o el código del proyecto con un simple rm -rf.

La solución propuesta es separar dónde vive el agente y dónde ejecuta código. El proceso del agente es un bucle de larga duración que llama a un modelo y selecciona herramientas, así que conviene alojarlo en un entorno persistente (una Fly Machine, un VPS o un portátil). En cambio, cada comando que el modelo produce debe ejecutarse en un sandbox desechable e independiente: un Sprite de Fly. Estos arrancan en frío en apenas unos segundos, hibernan cuando no se usan y pueden restaurarse a un checkpoint mediante copia-en-escritura, lo que hace viable revertir cambios destructivos en aproximadamente nueve segundos.

El artículo ilustra el patrón con dos proyectos reales: SpriteDoc, un agente interno de soporte construido sobre Pi que crea un Sprite por sesión y nunca almacena el token del usuario en disco, sino que lo inyecta solo durante la ejecución de cada comando; y Hermes Agent, de Nous Research, cuya backend terminal mantiene un Sprite por tarea y evita los prompts de confirmación porque el propio sandbox actúa como frontera de seguridad. Ambos comparten la idea de que el hogar del agente puede ser durable, pero el lugar donde corre strings no confiables debe ser perfectamente prescindible.