Passa al contenuto principale
AI Engineering

Presentazione di Omnigent: un meta-harness per combinare, controllare e condividere i tuoi agenti

di Matei Zaharia e Kasey Uhlenhuth

  • Gli harness per agenti hanno reso i modelli intercambiabili. Riteniamo che il prossimo livello di astrazione sia il meta-harness, il livello superiore a ogni harness in cui risiedono composizione, controllo e collaborazione.
  • Omnigent è il nostro meta-harness open source: un'unica interfaccia unificata per Claude Code, Codex, Pi e i tuoi agenti personalizzati, con ogni sessione accessibile da terminale, web, desktop e telefono.
  • Crea team di agenti che combinano harness e modelli, controllali con policy anziché con prompt e condividi sessioni live con i colleghi invece di fare copia-incolla tra i vari strumenti.

In Databricks, utilizziamo e sviluppiamo agenti su vasta scala, dalla scrittura di codice alla distribuzione di prodotti basati su agenti come Genie. Tuttavia, anche se le capacità degli agenti sono migliorate notevolmente, lavorarci insieme risulta ancora macchinoso. Come utenti, spesso abbiamo 4 o 5 agenti aperti contemporaneamente (agenti di codifica, Gemini search, ecc.) e passiamo il tempo a copiare e incollare testo tra di essi e Docs, Slack e altri strumenti di collaborazione. E come sviluppatori di agenti, siamo costantemente impegnati a migliorare i nostri agenti combinando gli ultimi harness, SDK e modelli. Il problema è che le funzionalità dei LLM sono racchiuse in un harness per agenti, e questi harness hanno interfacce diverse che ne rendono difficile la combinazione o la sostituzione.

Per questo abbiamo creato Omnigent: un meta-harness che si posiziona al di sopra degli agenti che già utilizzi (Claude Code, Codex, Pi o agenti personalizzati) e li rende parti interoperabili di un sistema più ricco. Omnigent affronta i problemi che sorgono quando un singolo harness non basta più: offre modi semplici per comporre più agenti, controllarli con policy avanzate e collaborare in tempo reale con i colleghi.

Crediamo che presto le persone lavoreranno con gli agenti attraverso questo nuovo livello, il meta-harness. Ecco perché oggi stiamo rilasciando Omnigent come open source sotto licenza Apache 2.0.

Architettura di Omnigent: un runner racchiude qualsiasi agente in una sessione in sandbox con un'API uniforme. Un server fornisce policy e condivisione, ed espone ogni sessione tramite terminale, app e API web.

Perché creare un meta-harness?

In Databricks, abbiamo adottato presto gli agenti di codifica in tutto il nostro team di ingegneria di oltre 5000 membri e abbiamo sviluppato migliaia di agenti per i clienti. Questa esperienza ci ha convinto che la frontiera dell'ingegneria degli agenti sta salendo di livello. I risultati migliori non provengono più da un singolo modello in un singolo harness: Harvey ha superato un modello di frontiera in termini di qualità e costi fornendo a un modello worker open source un consulente di frontiera da poter chiamare, Anthropic ha sviluppato il suo prodotto di ricerca come un agente principale che orchestra sub-agenti paralleli, e il nostro Genie utilizza diversi LLM per la pianificazione, la ricerca e la generazione di codice. Anche gli ingegneri stanno cambiando il loro modo di lavorare: invece di inviare prompt a un agente alla volta, progettano dei loop che guidano interi team di agenti.

Questi pattern coinvolgono più harness, modelli e persone, ma ogni harness comprende solo le proprie sessioni. Per combinare gli agenti, governarli e lavorarci insieme ad altre persone, è necessario un livello superiore all'harness. Omnigent è quel livello e offre:

  • Composizione. Combina più modelli, harness e tecniche senza riscrivere il codice, e passa da Claude Code, Codex, Pi e i tuoi agenti personalizzati con modifiche di una sola riga.
  • Controllo. Policy contestuali e stateful che tracciano le azioni degli agenti e applicano guardrail come budget di spesa e autorizzazioni a livello di meta-harness, non tramite prompt.
  • Collaborazione. Condividi sessioni di agenti in tempo reale tramite URL e rivedi i file al loro interno insieme ai colleghi, in modo che il team possa esaminare, commentare e guidare gli agenti insieme in tempo reale.

Come funziona Omnigent

Omnigent introduce un'interfaccia comune al di sopra degli agenti da riga di comando e degli SDK degli agenti per consentirti di combinarli e scambiarli facilmente, concentrandosi poi sui problemi condivisi che sorgono quando un harness si ferma. L'intuizione chiave è che, indipendentemente da come ogni harness di agenti chiami internamente il proprio LLM, l'interfaccia per gli utenti è la stessa: messaggi e file in ingresso, stream di testo e chiamate di strumenti (tool call) in uscita. Abbiamo quindi creato un'API comune che racchiude sia gli agenti di codifica basati su terminale (Claude Code, Codex, Pi, ecc.) sia gli SDK (OpenAI Agents, Claude Agents SDK, ecc.).

Oltre a questa interfaccia, la versione attuale di Omnigent aggiunge le seguenti funzionalità chiave:

  • Collaborazione in tempo reale: puoi invitare altre persone a visualizzare la sessione del tuo agente, commentare i file nel suo spazio di lavoro o persino inviare comandi, in modo che le tue sessioni e le directory di lavoro diventino il luogo principale in cui collaborare.
  • Interfacce multiple per lo stesso agente: una volta connesso un agente come Claude Code al server Omnigent, puoi accedervi via web, mobile, app nativa per Mac OS o tramite API.
  • Esecuzione in cloud: avvia qualsiasi agente sulla tua macchina o su provider di sandbox ospitati come Modal e Daytona, per una collaborazione sicura in un ambiente protetto.
  • Policy di sicurezza contestuali: le policy di sicurezza di Omnigent vanno oltre il semplice "consenti X / nega Y" degli agenti di codifica, per tracciare lo stato dinamico di ogni sessione e prendere decisioni più intelligenti. Ad esempio, puoi stabilire che dopo che un agente ha scaricato un nuovo pacchetto da npm, debba richiedere l'approvazione umana per eseguire un git push, o che debba essere in grado di scrivere solo sui documenti che ha creato, e non su qualsiasi documento.
  • Policy sui costi: uno degli elementi che tracciamo dinamicamente è il costo del LLM per ogni sessione. Ad esempio, puoi chiedere a Omnigent di mettere in pausa un agente e chiedere di continuare ogni 100 $ spesi.
  • Sandbox OS robusta: in Omnigent, includiamo una sandbox OS flessibile sviluppata dal nostro team di sicurezza, con la capacità di bloccare in modo flessibile l'accesso al sistema operativo e intercettare e trasformare le richieste di rete (ad esempio, evitando che un agente veda il tuo token di sicurezza GitHub, inserendolo invece solo nel proxy di uscita sulle richieste approvate).
  • Creazione multi-harness: specifica un agente personalizzato come file YAML e portalo su diversi harness con una modifica di una sola riga, oppure combina sub-agenti che utilizzano harness diversi nello stesso agente.

Queste funzionalità rappresentano solo la punta dell'iceberg di ciò che si può fare a livello di meta-harness, tuttavia, e ci aspettiamo di vedere presto molte altre idee dal nostro team e dalla community open source. Alcuni elementi della nostra roadmap includono l'ottimizzazione automatica a livello di meta-harness con GEPA, l'introspezione basata su codice all'interno degli agenti simile a MemEx e RLM, un MCP di Omnigent Server in modo che gli agenti possano lavorare su tutte le sessioni, e altri harness. Abbiamo anche reso Omnigent facile da distribuire su un'ampia gamma di infrastrutture, tra cui Fly.io, Railway, le sandbox di Modal e Daytona e molti provider di LLM, e accogliamo con favore patch per ulteriori integrazioni.

Un meta-harness per combinare, controllare e condividere i tuoi agenti

Un nuovo livello per lavorare con gli agenti

Molti dei più grandi cambiamenti nel nostro settore sono derivati dal passaggio a un nuovo livello di astrazione: ad esempio, mentre un tempo gli ingegneri gestivano singoli processi e server, ora possono gestire un'intera flotta tramite sistemi cloud come Kubernetes e Terraform.

Pensiamo che oggi gli agenti si trovino nello stesso punto. Ogni harness è un silo a sé stante, con il proprio contesto, i propri controlli e il proprio modo di funzionare, e nulla di tutto ciò si trasferisce quando si cambia strumento. Inoltre, molti problemi abbracciano intrinsecamente più harness, tra cui la composizione, la sicurezza e la collaborazione. Un meta-harness eleva il tuo lavoro al di sopra di ogni singolo harness, in modo che le sessioni, le policy e le competenze rimangano con te, indipendentemente dall'agente o dal modello in esecuzione. I modelli e gli harness continueranno a cambiare con l'evolversi del settore; il livello a cui lavori non dovrebbe farlo.

Stiamo costruendo questo livello in modo aperto e ci piacerebbe che lo costruissi insieme a noi.

Provalo subito

Omnigent è open source in versione alpha oggi stesso.

(Questo post sul blog è stato tradotto utilizzando strumenti basati sull'intelligenza artificiale) Post originale

Ricevi gli ultimi articoli nella tua casella di posta

Iscriviti al nostro blog e ricevi gli ultimi articoli direttamente nella tua casella di posta.