
onecli v2.0.1
Harness open-source sandboxato per agenti per team. Offre a ogni dipendente un agente personale protetto.
L'agent harness costruito per i team.
Un assistente professionale per le aziende. Offri a ogni dipendente un agente personale protetto e in sandbox.
Sito web · Documentazione · Discord
Avvio rapido
Ospitato nel cloud: onecli.sh
Self-hosted
git clone https://github.com/onecli/onecli.git && cd onecli
pnpm install
pnpm run setup
Su Kubernetes, installa invece la chart Helm:
helm install onecli oci://ghcr.io/onecli/charts/onecli. La
guida al self-hosting copre entrambe le opzioni.
Cos'è OneCLI v2?
OneCLI è una piattaforma open-source per eseguire agenti AI come team. Crea un agente per ogni persona, concedi a ciascun agente l'accesso di cui ha bisogno, e questo lavora in una sandbox, instradato attraverso un gateway che inietta le credenziali e applica la tua policy.
Perché abbiamo creato OneCLI?
OneCLI è nato come un vault di credenziali per agenti AI, scritto in Rust. Abbiamo scoperto che la maggior parte della domanda proveniva da individui e team che eseguivano agenti autonomi come Hermes, OpenClaw e NanoClaw. Le persone volevano agenti che svolgessero lavoro reale per chi li esegue, ma mancavano due parti:
- la gestione di segreti e permessi.
- e per i team - la gestione multiplayer.
Ogni agente autonomo esistente è costruito per una singola persona. E per una singola persona, sono ottimi. Nel momento in cui devi replicarlo su un team, diventa caotico: avviare ogni agente, decidere cosa ciascuno può e non può fare, ospitarli, tenere traccia di quale agente appartiene a chi.
Così abbiamo cambiato rotta e creato OneCLI v2.
Costruito per i team
- Il tuo identity provider, integrato: provisiona agenti per conto dell'identità di ogni dipendente, direttamente dall'IdP aziendale.
- Un agente per persona: tutti nel workspace ricevono il proprio agente in sandbox, raggiungibile dalla dashboard o da Slack.
- Una policy, applicata ovunque: gestisci la policy del team in un unico posto, e ogni agente nei workspace la rispetterà.
- Approvazioni human-in-the-loop deterministiche: direttamente nella chat, per le cose su cui serve il controllo al 100%, come inviare l'email, eliminare il ticket Linear, svuotare un bucket S3.
- Connessioni condivise: collegate una volta a livello di team, come chiavi LLM o service account, concesse per agente senza mai essere consegnate a uno solo.
L'agente
Un agente è una cosa durevole, non un singolo prompt. Ha:
- Un computer: la propria sandbox isolata, con un filesystem e una shell. L'unica via d'uscita è il gateway, quindi può raggiungere ciò che gli hai concesso e nient'altro.
- Una conversazione: la propria pagina nella dashboard, o su Slack. Immagini e file inclusi. Un messaggio inviato mentre l'agente sta lavorando lo reindirizza immediatamente invece di accodarsi dietro.
- Memoria: ciò che l'agente impara è conservato dalla piattaforma, quindi non va mai perso. Puoi leggerlo e modificarlo in qualsiasi momento.
- Skills: istruzioni e helper che scrivi una volta sola, sempre disponibili per l'agente.
- Una pianificazione: l'agente può pianificare lavoro futuro, e la piattaforma lo risveglia al momento giusto.
- Credenziali che non vede mai: ogni agente riceve solo l'accesso che gli hai concesso, e il gateway lo applica a ogni richiesta. Oppure collega Bitwarden o 1Password per l'iniezione on-demand, senza nulla memorizzato sul server.
- La propria app Slack: collegalo una volta e risponde nei canali e nei DM con il proprio nome e avatar, con file e immagini. Elimina l'agente e la sua app Slack sparisce con lui.
Gli agenti girano sulla tua infrastruttura. Il runner è solo in uscita e non espone porte in ingresso, quindi un laptop, un homelab o una VPC dietro NAT funzionano tutti senza ingress e senza tunnel.
Architettura
- Web Dashboard: app Next.js. Crea agenti, chatta con loro, modifica la loro memoria e le loro competenze, gestisci connessioni, segreti e autorizzazioni.
- API Server: il control plane. Possiede il database, il conversation plane e la coda di lavoro interrogata dal runner.
- Rust Gateway: intercetta le richieste in uscita (HTTPS incluso, tramite MITM) e inietta le credenziali. Gli agenti si autenticano con access token tramite header
Proxy-Authorization. - Runner: avvia, sospende e termina i sandbox degli agenti. Solo in uscita, e non tocca mai il database.
- Sandbox Supervisor: viene eseguito all'interno di ogni sandbox, parlando un'interfaccia harness neutrale rispetto al vendor, così il runtime dell'agente è intercambiabile.
- SSH Terminator: la porta d'ingresso SSH — termina le connessioni
sshcon certificati a breve scadenza e le collega ai sandbox degli agenti tramite un backend substrate pluggable. - Channel Adapter: il demone Slack, un'app per agente.
- Secret Store: AES-256-GCM a riposo, decifrato solo al momento della richiesta, abbinato per host e pattern di percorso, iniettato come header o parametri di query.
Sviluppo locale
git clone https://github.com/onecli/onecli.git && cd onecli
mise install
pnpm install
pnpm dev