Ir al contenido principal
AI Engineering

Presentamos Omnigent: un meta-arnés para combinar, controlar y compartir tus agentes

por Matei Zaharia, Kasey Uhlenhuth y Corey Zumar

En Databricks, usamos y creamos agentes de forma extensiva, desde programar con ellos a gran escala hasta lanzar productos de agentes como Genie. Pero aunque las capacidades de los agentes han mejorado mucho, trabajar con ellos resulta incómodo. Como usuarios, a menudo tenemos 4 o 5 agentes abiertos a la vez (agentes de programación, búsqueda de Gemini, etc.) y pasamos el tiempo copiando y pegando texto entre ellos y Docs, Slack y otras herramientas de colaboración. Y como creadores de agentes, estamos en un esfuerzo constante por mejorar nuestros agentes combinando los últimos entornos de ejecución (harnesses), SDK y modelos. El problema es que las capacidades de los LLM están empaquetadas en un entorno de ejecución de agentes, y estos entornos tienen interfaces diferentes que dificultan combinarlos o intercambiarlos.

Por eso creamos Omnigent: un metaentorno de ejecución (meta-harness) que se sitúa por encima de los agentes que ya utilizas (Claude Code, Codex, Pi o agentes personalizados) y los convierte en partes interoperables de un sistema más completo. Omnigent aborda los problemas que surgen cuando un solo entorno de ejecución se queda corto: ofrece formas sencillas de combinar varios agentes, controlarlos con políticas avanzadas y colaborar en tiempo real con tus compañeros de equipo.

Creemos que pronto las personas trabajarán con agentes a través de esta nueva capa, el metaentorno de ejecución. Por eso, hoy lanzamos Omnigent como código abierto bajo la licencia Apache 2.0.

Arquitectura de Omnigent: un ejecutor (runner) envuelve a cualquier agente en una sesión en un entorno aislado (sandbox) con una API uniforme. Un servidor proporciona políticas y funciones para compartir, y expone cada sesión a través de la terminal, la aplicación y las API web.

¿Por qué crear un metaentorno de ejecución?

Adoptamos los agentes de programación de forma temprana en nuestro equipo de ingeniería de más de 5000 miembros y creamos miles de agentes para nuestros clientes. Esa experiencia nos convenció de que la frontera de la ingeniería de agentes está subiendo de nivel. Los mejores resultados ya no provienen de un solo modelo en un único entorno de ejecución: Harvey superó a un modelo de frontera en calidad y costo al darle a un modelo de trabajo de código abierto un asesor de frontera al que puede llamar, Anthropic desarrolló su producto de investigación como un agente principal que coordina subagentes paralelos, y nuestro propio Genie utiliza diferentes LLM para la planificación, la búsqueda y la generación de código. Los ingenieros también están cambiando su forma de trabajar: en lugar de dar instrucciones (prompts) a un agente a la vez, diseñan bucles que dirigen a equipos enteros de agentes.

Estos patrones abarcan múltiples entornos de ejecución, modelos y personas, pero cada entorno solo entiende sus propias sesiones. Para combinar agentes, gobernarlos y trabajar en ellos con otras personas, necesitas una capa por encima del entorno de ejecución. Omnigent es esa capa y ofrece:

  • Composición. Combina múltiples modelos, entornos de ejecución y técnicas sin tener que volver a escribir código, e intercambia entre Claude Code, Codex, Pi y tus propios agentes con cambios de una sola línea.
  • Control. Políticas contextuales con estado que realizan un seguimiento de las acciones de los agentes y aplican medidas de seguridad (guardrails), como presupuestos de costos y permisos, en la capa del metaentorno de ejecución, no mediante prompts.
  • Colaboración. Comparte sesiones de agentes en vivo a través de una URL y revisa archivos en ellas de forma conjunta, para que los compañeros de equipo puedan revisar, comentar y guiar a los agentes juntos en tiempo real.

Cómo funciona Omnigent

Omnigent introduce una interfaz común por encima de los agentes de línea de comandos y los SDK de agentes para permitirte combinarlos e intercambiarlos fácilmente, y luego se enfoca en los problemas compartidos que surgen cuando un entorno de ejecución se queda corto. La idea clave es que, independientemente de cómo invoque internamente cada entorno de ejecución de agentes a su LLM, la interfaz para los usuarios es la misma: entrada de mensajes y archivos, salida de flujos de texto y llamadas a herramientas. Por lo tanto, creamos una API común que envuelve tanto a los agentes de programación basados en terminal (Claude Code, Codex, Pi, etc.) como a los SDK (OpenAI Agents, Claude Agents SDK, etc.).

Sobre esta interfaz, la versión actual de Omnigent añade las siguientes características clave:

  • Colaboración en tiempo real: puedes invitar a otras personas a ver la sesión de tu agente, comentar archivos en su espacio de trabajo o incluso enviar comandos, de modo que tus sesiones y directorios de trabajo se conviertan en el lugar principal de colaboración.
  • Múltiples interfaces para el mismo agente: una vez que conectas un agente como Claude Code al servidor de Omnigent, puedes acceder a él en la web, dispositivos móviles, la aplicación nativa de Mac OS o mediante API.
  • Ejecución en la nube: inicia cualquier agente en tu propia máquina o en proveedores de entornos aislados (sandbox) alojados como Modal y Daytona, para colaborar de forma segura en un entorno hermético.
  • Políticas de seguridad contextuales: las políticas de seguridad de Omnigent van más allá del simple "permitir X / denegar Y" de los agentes de programación, ya que realizan un seguimiento del estado dinámico de cada sesión para tomar decisiones más inteligentes. Por ejemplo, puedes definir que después de que un agente descargue un paquete nuevo de npm, requiera aprobación humana para hacer un git push, o que solo pueda escribir en los documentos que él mismo creó, no en cualquier documento.
  • Políticas de costos: uno de los aspectos que rastreamos dinámicamente es el costo de LLM de cada sesión. Por ejemplo, puedes pedirle a Omnigent que pause un agente y solicite autorización para continuar cada vez que gaste 100 USD.
  • Entorno aislado (sandbox) de OS robusto: en Omnigent, incluimos un sandbox de OS flexible desarrollado por nuestro equipo de seguridad, con la capacidad de restringir de forma adaptable el acceso al OS, así como interceptar y transformar solicitudes de red (por ejemplo, evitar que un agente vea tu token de seguridad de GitHub y, en su lugar, inyectarlo solo en el proxy de salida en las solicitudes aprobadas).
  • Creación multi-entorno: especifica un agente personalizado como un archivo YAML y transpórtalo entre diferentes entornos de ejecución con un cambio de una sola línea, o combina subagentes que utilicen diferentes entornos en el mismo agente.

Sin embargo, estas características son solo la punta del iceberg de lo que se puede hacer en la capa del metaentorno de ejecución, y esperamos ver muchas más ideas pronto por parte de nuestro equipo y de la comunidad de código abierto. Algunos elementos de nuestra hoja de ruta incluyen la optimización automática a nivel de metaentorno con GEPA, la introspección basada en código dentro de los agentes similar a MemEx y RLM, un MCP de Omnigent Server para que los agentes puedan trabajar en todas tus sesiones, y más entornos de ejecución. También hemos facilitado la implementación de Omnigent en una amplia gama de infraestructuras, incluidos los sandboxes de Fly.io, Railway, Modal y Daytona, y muchos proveedores de LLM, y agradecemos las contribuciones para más integraciones.

Un metaentorno de ejecución para combinar, controlar y compartir tus agentes

Una nueva capa para trabajar con agentes

Muchos de los mayores cambios en nuestra industria surgieron al pasar a una nueva capa de abstracción: por ejemplo, mientras que antes los ingenieros gestionaban procesos y servidores individuales, ahora pueden gestionar toda una flota a través de sistemas en la nube como Kubernetes y Terraform.

Creemos que los agentes se encuentran hoy en ese mismo punto. Cada entorno de ejecución es su propio silo, con su propio contexto, sus propios controles y su propia forma de ejecutarse, y nada de eso se transfiere cuando cambias de herramienta. Además, muchos problemas abarcan intrínsecamente varios entornos de ejecución, como la composición, la seguridad y la colaboración. Un metaentorno de ejecución eleva tu trabajo por encima de cualquier entorno individual, de modo que tus sesiones, políticas y habilidades permanezcan contigo sin importar qué agente o modelo se esté ejecutando. Los modelos y los entornos de ejecución seguirán cambiando a medida que evoluione el sector; la capa en la que trabajas no debería tener que hacerlo.

Estamos construyendo esa capa de forma abierta y nos encantaría que la construyeras con nosotros.

Pruébalo

Omnigent ya está disponible en código abierto en fase alfa.

(Esta entrada del blog ha sido traducida utilizando herramientas basadas en inteligencia artificial) Publicación original

Recibe las últimas publicaciones en tu bandeja de entrada

Suscríbete a nuestro blog y recibe las últimas publicaciones directamente en tu bandeja de entrada.