Apresentando Omnigent: um meta-harness para combinar, controlar e compartilhar seus agentes


Na Databricks, usamos e construímos agentes extensivamente, desde a codificação com eles em escala até produtos para agentes de remessa, como o Genie. Mas mesmo que as capacidades dos agentes tenham melhorado muito, trabalhar com eles parece complicado. Como usuários, geralmente temos de 4 a 5 agentes abertos ao mesmo tempo (agentes de codificação, pesquisa Gemini, and many others.) e gastamos nosso tempo copiando e colando texto entre eles e o Docs, Slack e outras ferramentas de colaboração. E como construtores de agentes, estamos trabalhando duro para melhorar nossos agentes combinando os mais recentes equipamentos, SDKs e modelos. O problema é que os recursos LLM são agrupados em um equipamento de agente, e esses equipamentos têm interfaces diferentes que dificultam sua combinação ou troca.

Então nós construímos Omnigente: um meta-arnês que fica acima dos agentes que você já usa (Claude Code, Codex, Pi ou agentes personalizados) e os torna partes interoperáveis ​​de um sistema mais rico. Omnigent aborda os problemas onde um único equipamento para: adiciona maneiras fáceis de compor vários agentes, controlá-los com políticas avançadas e colaborar ao vivo com colegas de equipe.

Acreditamos que em breve as pessoas trabalharão com agentes através desta nova camada, a meta-arnês. É por isso que hoje estamos código aberto Omnigente no Apache 2.0.

Apresentando Omnigent: um meta-harness para combinar, controlar e compartilhar seus agentes
Arquitetura omnigente: um executor envolve qualquer agente em uma sessão em área restrita com uma API uniforme. Um servidor fornece políticas e compartilhamento e expõe cada sessão no terminal, no aplicativo e nas APIs da internet.

Por que construir um meta-arnês?

Na Databricks, adotamos agentes de codificação desde o início em nossa equipe de engenharia com mais de 5.000 membros e criamos milhares de agentes para clientes. Essa experiência nos convenceu de que a fronteira da engenharia de agentes está subindo de nível. Os melhores resultados já não vêm de um único modelo num único arnês: Harvey superar um modelo de fronteira em qualidade e custo, dando a um modelo de trabalhador de código aberto um consultor de fronteira que ele possa chamar, Antrópico construiu seu produto de pesquisa como agente líder orquestrando subagentes paralelos, e nosso próprio Gênio usa diferentes LLMs para planejamento, pesquisa e geração de código. Os engenheiros também estão mudando a forma como trabalham: em vez de solicitar um agente de cada vez, eles projetam laços que impulsionam equipes inteiras de agentes.

Esses padrões abrangem vários chicotes, modelos e pessoas, mas cada chicote entende apenas suas próprias sessões. Para combinar agentes, governá-los e trabalhar neles com outras pessoas, você precisa de uma camada acima do arnês. Omnigent é essa camada e fornece:

  • Composição. Mix vários modelos, equipamentos e técnicas sem reescrever o código e alterne entre Claude Code, Codex, Pi e seus próprios agentes com alterações de uma linha.
  • Controlar. Políticas contextuais e com estado que rastreiam as ações dos agentes e impõem proteções, como orçamentos de custos e permissões, na camada de meta-arnês, e não por meio de prompts.
  • Colaboração. Compartilhe sessões de agentes ao vivo by way of URL e revise os arquivos nelas juntos, para que os colegas de equipe possam revisar, comentar e orientar os agentes juntos em tempo actual.

Como funciona o Omnigente

Omnigent apresenta uma interface comum acima dos agentes de linha de comando e SDKs de agente para permitir que você os mix e troque facilmente e, em seguida, se concentra nos problemas compartilhados onde um chicote para. O principal perception é que, independentemente de cada agente aproveitar as chamadas em seu LLM internamente, a interface para os usuários é a mesma: entrada de mensagens e arquivos, fluxos de texto e chamadas de ferramentas. Assim, construímos uma API comum que envolve agentes de codificação baseados em terminal (Claude Code, Codex, Pi, and many others) e SDKs (OpenAI Brokers, Claude Brokers SDK, and many others).

Além dessa interface, a versão atual do Omnigent adiciona os seguintes recursos principais:

  • Colaboração em tempo actual: você pode convidar outras pessoas para visualizar a sessão do seu agente, comentar arquivos em seu espaço de trabalho ou até mesmo enviar comandos, para que suas sessões e diretórios de trabalho se tornem o principal native de colaboração.
  • Várias interfaces para o mesmo agente: depois de conectar um agente como Claude Code ao servidor Omnigent, você pode acessá-lo na internet, em dispositivos móveis, em aplicativos nativos do Mac OS ou em APIs.
  • Execução na nuvem: inicie qualquer agente em sua própria máquina ou em provedores de sandbox hospedados, como Modal e Daytonapara colaboração segura em um ambiente hermético.
  • Políticas de segurança contextuais: As políticas de segurança da Omingent vão além do simples “permitir X / negar Y” dos agentes de codificação, para rastrear o estado dinâmico de cada sessão e tomar decisões mais inteligentes. Por exemplo, você pode dizer que depois que um agente baixa um novo pacote do npm, ele deve exigir aprovação humana para git push, ou que ele só deve ser capaz de gravar nos documentos que criou, e não em qualquer documento.
  • Políticas de custos: Uma das coisas que rastreamos dinamicamente é o custo do LLM de cada sessão. Por exemplo, você pode pedir ao Omnigent para pausar um agente e pedir para continuar após cada US$ 100 gastos.
  • Sandbox de sistema operacional forte: No Omnigent, incluímos um sandbox de sistema operacional flexível de nossa equipe de segurança com a capacidade de bloquear com flexibilidade o acesso ao sistema operacional e interceptar e transformar a rede solicitações (por exemplo, não deixe um agente ver seu token de segurança do GitHub, mas em vez disso, injete-o apenas no proxy de saída em solicitações aprovadas).
  • Autoria de múltiplos chicotes: Especifique um agente personalizado como um YAML e porte-o entre chicotes com uma alteração de uma linha ou mix subagentes usando chicotes diferentes no mesmo agente.

No entanto, esses recursos estão apenas arranhando a superfície do que pode ser feito na camada meta-harness, e esperamos ver muito mais ideias em breve de nossa equipe e da comunidade de código aberto. Alguns itens em nosso roteiro incluem otimização automática no nível do meta-harness com GEPAintrospecção baseada em código dentro de agentes semelhantes a MemEx e RLMum Omnigent Server MCP para que os agentes possam trabalhar em suas sessões e mais recursos. Também tornamos o Omnigent fácil de implantar em uma ampla variedade de infraestruturas, incluindo sandboxes Fly.io, Railway, Modal e Daytona, e muitos provedores de LLM, e aceitamos patches para mais integrações.

Um meta-arnês para combinar, controlar e compartilhar sua idade

Uma nova camada para trabalhar com agentes

Muitas das maiores mudanças em nosso setor vieram da mudança para uma nova camada de abstração: por exemplo, enquanto os engenheiros costumavam gerenciar processos e servidores individuais, agora eles podem gerenciar uma frota inteira por meio de sistemas em nuvem como Kubernetes e Terraform.

Achamos que os agentes estão no mesmo ponto hoje. Cada equipamento é seu próprio silo, com seu próprio contexto, seus próprios controles e sua própria maneira de operar, e nada disso é transferido quando você troca de ferramenta. Além disso, muitos problemas abrangem intrinsecamente vários aspectos, incluindo composição, segurança e colaboração. Um meta-arnês eleva seu trabalho acima de qualquer arnês único, para que suas sessões, políticas e habilidades permaneçam com você, não importa qual agente ou modelo esteja em execução. Os modelos e equipamentos continuarão mudando à medida que o campo evolui; a camada em que você trabalha não deveria.

Estamos construindo essa camada abertamente e adoraríamos que você a construísse conosco.

Experimente

Omnigent é código aberto em versão alfa hoje.

Deixe um comentário

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *