Xcapit Labs
Agentor: Construyendo un framework seguro de agentes IA en Rust
Cómo una auditoría de seguridad de un framework open-source de agentes IA expuso limitaciones fundamentales en runtimes basados en Python — y llevó a Xcapit a construir Agentor, un framework nativo en Rust optimizado para generación de código.
Tests automatizados
Crates modulares
Cold start
Aislamiento de ejecución
El desafío
Los frameworks de agentes IA se han convertido en infraestructura esencial para equipos que integran modelos de lenguaje en flujos de trabajo productivos. La mayoría de estos frameworks están escritos en Python — un lenguaje optimizado para prototipado rápido pero fundamentalmente limitado en seguridad de memoria, rendimiento en tiempo de ejecución y comportamiento determinístico. Xcapit fue contratado para realizar una auditoría de seguridad de un prominente framework open-source de agentes IA, y los hallazgos fueron preocupantes.
La auditoría reveló tres categorías de limitaciones estructurales. Primero, seguridad de memoria: el garbage collector de Python introduce pausas no determinísticas y la falta de semántica de ownership hace imposible garantizar que los datos sensibles — claves API, prompts de usuario, respuestas del modelo — se desalojen correctamente. Segundo, sobrecarga del runtime: la orquestación de agentes en Python consumía entre 5 y 10 veces más memoria que la lógica equivalente en un lenguaje de sistemas, haciendo que los despliegues multi-agente fueran prohibitivamente costosos. Tercero, brechas de cumplimiento: la arquitectura del framework dificultaba la implementación de trazas de auditoría, ejecución aislada y controles de residencia de datos requeridos por ISO 27001, GDPR y estándares regulatorios similares.
Estos no eran bugs que se pudieran parchear. Eran consecuencias de decisiones arquitectónicas fundamentales — la elección del lenguaje, la ausencia de aislamiento de ejecución y la falta de fronteras de seguridad estructuradas.
De la auditoría a Agentor: el origen
La auditoría de seguridad produjo un informe detallado con más de 40 hallazgos clasificados por severidad. Si bien los mantenedores del framework recibieron el informe de manera constructiva, quedó claro que abordar las causas raíz requeriría una reescritura completa — no de las funcionalidades del framework, sino de sus cimientos. El equipo de ingeniería de Xcapit, con profunda experiencia en programación de sistemas e infraestructura criptográfica, decidió construir esos cimientos ellos mismos.
El proyecto se llamó Agentor. El objetivo fue explícito: replicar todas las capacidades funcionales del framework auditado — orquestación de agentes, ejecución de herramientas, integración con proveedores, gestión de conversaciones — pero implementarlas en Rust con seguridad de memoria, abstracciones de costo cero y arquitectura lista para cumplimiento normativo desde el día uno. El framework se publicaría bajo AGPL-3.0 para garantizar que permanezca open source y protegerlo contra forks propietarios.
Arquitectura en Rust
Agentor está estructurado como 13 crates modulares, cada uno con una responsabilidad única e interfaces bien definidas. Este diseño permite a los equipos usar solo los componentes que necesitan y reemplazar módulos individuales sin afectar el resto del sistema.
- agentor-core: definiciones de tipos, traits y abstracciones compartidas usadas en todos los crates
- agentor-runtime: el motor de ejecución de agentes con bucles de conversación estructurados y estrategias configurables
- agentor-providers: integraciones con proveedores de LLM (OpenAI, Anthropic, modelos locales) mediante un trait unificado
- agentor-tools: registro, validación y ejecución de herramientas con parsing de argumentos basado en esquemas
- agentor-mcp: implementación completa del Model Context Protocol para interoperabilidad entre frameworks
- agentor-sandbox: entorno de ejecución aislado basado en WASM para código de herramientas no confiable
- agentor-cli: interfaz de línea de comandos para ejecutar agentes, gestionar configuraciones y depurar flujos de trabajo
Todo el codebase utiliza serialización zero-copy donde es posible, evitando asignaciones de memoria innecesarias durante el paso de mensajes entre agentes y herramientas. El modelo de ownership de Rust garantiza que datos sensibles como claves API y respuestas de modelos no puedan ser accedidos después de ser movidos o liberados — una garantía que simplemente no es posible en lenguajes con garbage collector.
Sandbox WASM
Una de las funcionalidades de seguridad más críticas de Agentor es el sandbox WASM para ejecución de herramientas. Cuando un agente IA decide invocar una herramienta — ya sea leer un archivo, ejecutar código o llamar a una API externa — esa ejecución ocurre dentro de un sandbox WebAssembly con capacidades estrictamente definidas.
El sandbox impone aislamiento de memoria (las herramientas no pueden acceder a la memoria del proceso host), restricciones de filesystem (las herramientas solo pueden acceder a rutas explícitamente autorizadas), fronteras de red (las solicitudes salientes se filtran por allowlist) y límites de tiempo (las herramientas descontroladas se terminan después de un timeout configurable). Esto significa que incluso si una herramienta contiene lógica maliciosa o un LLM alucina un comando peligroso, el radio de daño queda contenido dentro de la frontera del sandbox.
Optimizado para generación de código
Mientras que la mayoría de los frameworks de agentes IA tratan la generación de código como un caso de uso más entre muchos, Agentor fue diseñado desde la base con la generación de código como flujo de trabajo de primera clase. Este es su diferenciador clave. Los equipos de desarrollo que usan LLMs para generar, refactorizar y testear código necesitan un framework de agentes que entienda la estructura de los proyectos de software — no solo texto.
- Desarrollo dirigido por especificaciones: los agentes pueden ingerir especificaciones estructuradas (OpenAPI, protobuf, JSON Schema) y generar código de implementación que se ajuste a la spec, con validación en cada paso
- Salida de código multi-archivo: a diferencia de frameworks que producen respuestas de un solo archivo, Agentor soporta generación coordinada multi-archivo con tracking de dependencias y resolución de imports
- Transformaciones AST-aware: las modificaciones de código se realizan a nivel de árbol de sintaxis abstracta en lugar de manipulación de strings, reduciendo el riesgo de errores de sintaxis y preservando convenciones de formato
- Pipelines de testing integrados: el código generado se enruta automáticamente a través de suites de tests configurables antes de presentarse como salida final, detectando errores antes de que lleguen al desarrollador
- Optimización de ventana de contexto: los codebases grandes se fragmentan y priorizan inteligentemente para que los archivos más relevantes se incluyan en la ventana de contexto del LLM, maximizando la calidad de generación
Esta combinación de funcionalidades hace que Agentor sea particularmente adecuado para entornos empresariales donde la generación de código debe ser confiable, auditable e integrada en pipelines de CI/CD existentes.
Integración del protocolo MCP
Agentor incluye una implementación completa del Model Context Protocol (MCP), el estándar emergente para conectar agentes IA con herramientas externas, fuentes de datos y servicios. El soporte MCP significa que cualquier herramienta construida para Claude, GPT u otros modelos compatibles con MCP puede usarse directamente dentro de Agentor sin modificaciones.
La integración funciona en ambas direcciones: Agentor puede actuar como cliente MCP, consumiendo herramientas expuestas por servidores MCP externos, y como servidor MCP, exponiendo sus propias herramientas y capacidades a otros agentes o sistemas de orquestación. Esta compatibilidad bidireccional asegura que Agentor se integre en la infraestructura existente en lugar de requerir que los equipos reemplacen sus herramientas actuales.
Cumplimiento normativo y seguridad
Agentor fue construido con el cumplimiento regulatorio como restricción de diseño, no como algo que se agrega después. El framework incluye funcionalidades que abordan los requisitos más comunes en industrias reguladas:
- Listo para GDPR: todas las rutas de procesamiento de datos soportan seguimiento explícito de consentimiento, minimización de datos y derecho al olvido. Los campos sensibles pueden anotarse para redacción automática en logs
- Alineado con ISO 27001: la arquitectura modular mapea directamente a los dominios de control de ISO 27001, con fronteras de seguridad documentadas entre crates y responsabilidad de riesgo explícita por módulo
- Candidato a DPGA: como proyecto open-source con potencial documentado de impacto social, Agentor se está enviando al registro de la Digital Public Goods Alliance
- Licencia AGPL-3.0: garantiza que el framework permanezca open source y cualquier modificación desplegada como servicio también deba ser open source, previniendo el lock-in propietario
- Traza de auditoría: cada decisión de agente, invocación de herramienta y respuesta de modelo se registra con metadata estructurada para análisis post-hoc y revisión regulatoria
Resultados y métricas
El desarrollo de Agentor alcanzó la preparación para producción con resultados medibles que validan las decisiones arquitectónicas tomadas durante la reescritura:
- 483+ tests automatizados cubriendo escenarios unitarios, de integración y end-to-end en los 13 crates
- 13 crates modulares con fronteras de dependencia claras, permitiendo adopción incremental por parte de los equipos
- Tiempo de arranque en frío inferior a 50ms — comparado con 2-5 segundos en frameworks equivalentes en Python
- 10x menos consumo de memoria que alternativas basadas en Python en benchmarks de orquestación multi-agente
- Aislamiento por sandbox WASM con fronteras configurables de filesystem, red y memoria por ejecución de herramienta
- Cumplimiento total del protocolo MCP, verificado contra la suite de tests oficial
Conclusiones clave
- Las auditorías de seguridad pueden revelar limitaciones estructurales que ningún parche puede arreglar — a veces la respuesta correcta es una reescritura limpia en un lenguaje de sistemas
- El modelo de ownership de Rust provee garantías de seguridad de memoria que son esenciales para agentes IA que manejan datos sensibles en producción
- El sandboxing WASM transforma la ejecución de herramientas de un modelo basado en confianza a uno basado en capacidades, cambiando fundamentalmente la postura de seguridad de los agentes IA
- Optimizar para generación de código como flujo de trabajo de primera clase — no solo generación de texto — requiere transformaciones AST-aware, coordinación multi-archivo y testing integrado
- El soporte del protocolo MCP garantiza interoperabilidad con el ecosistema IA más amplio sin vendor lock-in
- El licenciamiento open-source bajo AGPL-3.0 protege al framework de la captura propietaria mientras habilita una adopción amplia
¿Te interesa desplegar agentes IA con seguridad y rendimiento de nivel productivo? Ya sea que necesites un framework de agentes seguro para entornos regulados, pipelines de generación de código para tu equipo de desarrollo, o integraciones personalizadas de IA — Xcapit tiene la infraestructura y la experiencia. Hablemos.
Construyamos algo grande juntos
IA, blockchain y software a medida — pensado para tu negocio.
Contactanos¿Necesitás agentes de IA inteligentes para tu negocio?
Construimos agentes autónomos guiados por especificaciones que generan resultados reales.
Más casos de estudio
Xcapit Labs
AiSec: Analisis de Seguridad Automatizado de OpenClaw — El Framework de Agentes IA Mas Popular del Mundo
Como el framework AiSec de Xcapit desplego 35 agentes de IA especializados para analizar OpenClaw (191K estrellas en GitHub) en 4 minutos y 12 segundos, descubriendo 63 hallazgos de seguridad incluyendo 8 vulnerabilidades criticas — mapeados a 8 frameworks de seguridad de la industria.
UNICEF Innovation Fund
UNICEF Digital Wallet: Inclusión Financiera para 4M+ Personas
Cómo Xcapit construyó una wallet digital basada en blockchain que alcanzó a más de 4M de personas en 167+ países como parte del UNICEF Innovation Fund — reconocida como Digital Public Good por la DPGA.