OctoSync: un agente es un cuello de botella, muchos agentes son un problema de seguridad
Ejecutar trabajo en paralelo es la parte fácil. Hacerlo sin entregarle a un modelo de lenguaje las llaves de la máquina anfitriona es la parte que casi todos se saltan.
El modelo de agente único se queda sin recorrido enseguida. Un proceso, una tarea cada vez, esperando a que termine cada paso antes de empezar el siguiente — suficiente para una demostración, inservible para cualquier cosa que se parezca a una carga de trabajo real. La solución evidente es ejecutar muchos agentes a la vez, y ahí es donde empieza el problema interesante.
El paralelismo no es lo difícil. Lo difícil es la contención. En el momento en que varios agentes ejecutan código, rastrean sitios y tocan datos de forma simultánea, la pregunta deja de ser «qué rápido va» y pasa a ser «qué está autorizado a hacer exactamente cada uno de estos, y qué ocurre cuando a uno le llega algo malicioso». La mayoría de los sistemas responden a eso con convenciones. Una convención no es una frontera de seguridad.
OctoSync se construye alrededor de un orquestador central que no confía en ninguno de sus trabajadores por defecto, con cada agente ejecutándose en su propio sandbox aislado y con permisos explícitos en lugar de heredados. La autoridad la tiene el orquestador; los agentes no tienen ninguna. Es una inversión deliberada de cómo se montan la mayoría de los marcos de agentes, y cuesta rendimiento — un coste que nos parece evidentemente asumible en cuanto hay datos y sistemas reales de por medio.
La otra decisión que merece mención es la interfaz. No la hay, en el sentido habitual. OctoSync se controla desde mensajería —las aplicaciones que la gente ya tiene abiertas— en lugar de desde otro panel en el que nadie entra. Un sistema que te obliga a acordarte de que existe se usa dos veces.
En qué punto está: la tercera fase de desarrollo está completa y la cuarta en planificación. Es interno, no hay repositorio público y no está disponible para descarga.