Torna agli aggiornamenti
New releaseAug 20, 2026

yoloai v0.11.0

Il tuo agente è un rischio per la sicurezza, quindi trattalo come tale. yoloAI gestisce correttamente il sandboxing degli agenti AI.

Condividi

yoloAI

Esecutore in sandbox per agenti di codifica AI. Nessuna stanchezza da permessi, nessuna credenziale nella sandbox, nessuna modifica al tuo progetto finché non le approvi.

CI Nightly Audit Release Go Reference License: MIT

Gli agenti di codifica AI funzionano al meglio con i blocchi di sicurezza disattivati, e questo è un modo terribile di eseguirli sulla tua macchina reale. yoloAI offre all'agente una sandbox usa e getta dove può modificare qualsiasi cosa ed eseguire qualsiasi cosa, senza supervisione. Il tuo progetto, le tue credenziali e la tua rete restano sotto il tuo controllo. Quando l'agente ha finito, esamina il diff e applica ciò che vuoi conservare.

Tu                           Sandbox                        Il tuo progetto
 │                              │                                │
 ├─ yoloai new fix-bug .        ├─ copia del progetto in sandbox │
 │                              │                                │
 ├─ << i tuoi prompt >>         ├─ l'agente lavora liberamente   │
 │                              │  (nessuna richiesta di permessi)│
 │                              │                                │
 ├─ yoloai diff fix-bug         ├─ mostra cosa è cambiato         │
 │                              │                                │
 ├─ yoloai apply fix-bug        │                                ├─ patch applicate
 │  (scegli tu quali)           │                                │
 │                              │                                │
 ├─ yoloai destroy fix-bug      ├─ distrugge la sandbox           │

Perché?

Le richieste di permesso esistono perché gli agenti commettono errori. Dopo la centesima approvazione/negazione smetti di leggerle, e --dangerously-skip-permissions è a un agente confuso di distanza da una giornata molto brutta. yoloAI riduce il raggio d'esplosione finché le richieste di permesso non sono più necessarie:

  • I tuoi file sono al sicuro. L'agente lavora su una copia isolata del tuo progetto. diff mostra esattamente cosa è cambiato, apply applica le patch al tuo progetto reale preservando i singoli commit, e i tuoi originali non cambiano mai finché non applichi.
  • I tuoi segreti sono al sicuro. La sandbox parte da un ambiente minimale, costruito localmente; le variabili d'ambiente dell'host restano sull'host. Le credenziali arrivano come mount di file in sola lettura, mai come variabili d'ambiente. Dove si applica il broker di credenziali (Claude, Gemini e Codex oggi, attivo di default), la chiave API resta interamente lato host: un proxy locale la inietta sulla strada verso il provider, quindi anche un agente completamente compromesso non ha nulla da esfiltrare.
  • La tua rete è tua. --network-isolated limita il traffico in uscita agli endpoint API dell'agente più i domini che permetti. --network-none rimuove la rete completamente.
  • La tua macchina è isolata. Scegli il tuo livello di comfort, dai namespace Linux attraverso gVisor fino alle VM hardware.

Vedi Sicurezza per il modello completo, incluse le limitazioni oneste.

Installazione

Binario precompilato (consigliato)

Scarica l'archivio per la tua piattaforma dall'ultima release, estrai il binario yoloai e mettilo nel tuo PATH:

# Linux x86-64 (sostituisci con linux_arm64 / darwin_amd64 / darwin_arm64 se necessario).
# Imposta VERSION sul tag mostrato nella pagina dell'ultima release linkata sopra, senza
# la "v" iniziale — es. VERSION=1.2.3 per il tag v1.2.3.
VERSION=X.Y.Z
curl -fsSL "https://github.com/kstenerud/yoloai/releases/download/v${VERSION}/yoloai_${VERSION}_linux_amd64.tar.gz" \
  | tar -xz yoloai
sudo install yoloai /usr/local/bin/

Ogni archivio include anche i completamenti per la shell, la LICENSE e il changelog. Le release sono firmate con cosign (checksums.txt) e portano la provenienza di build GitHub (gh attestation verify yoloai_… --repo kstenerud/yoloai). Anche i pacchetti Debian/RPM sono allegati a ogni release.

Homebrew (macOS / Linux)

brew install --cask kstenerud/tap/yoloai

Usando go install

# Ultima release
go install github.com/kstenerud/yoloai/cmd/yoloai@latest

# Ultima versione di sviluppo (instabile)
go install github.com/kstenerud/yoloai/cmd/yoloai@main

Richiede Go 1.26+. Il binario viene posizionato in $GOPATH/bin (tipicamente ~/go/bin).

Dal sorgente

git clone https://github.com/kstenerud/yoloai.git
cd yoloai
git checkout "$(git describe --tags --abbrev=0)"   # tag dell'ultima release; oppure resta su main per la versione di sviluppo
make build
sudo install yoloai /usr/local/bin/

È un singolo binario Go senza dipendenze runtime oltre al backend che scegli. Al primo avvio, yoloAI costruisce la sua immagine base e crea ~/.yoloai/ (o la directory che indichi con --data-dir).

Avvio rapido

Non interattivo

# Autenticazione (yoloAI rileva automaticamente le credenziali esistenti)
export ANTHROPIC_API_KEY=sk-ant-...   # Claude Code
export GEMINI_API_KEY=...             # Gemini CLI
# Oppure lascia che rilevi la tua sessione già autenticata

# 1. Avvia una sandbox. L'agente inizia a lavorare immediatamente quando fornisci un prompt
yoloai new fix-bug ./my-project --prompt "correggi i test che falliscono"

# 2. Vedi cosa ha cambiato l'agente
yoloai diff fix-bug

# 3. Applica le parti buone al tuo progetto reale
yoloai apply fix-bug

# 4. Elimina la sandbox
yoloai destroy fix-bug

Interattivo

yoloai new exploration ./my-project -a
# Sei dentro l'agente, in esecuzione in tmux nella sandbox.
#   Ctrl-B, D per scollegarti.
#   yoloai attach exploration per ricollegarti.

Iterazione

Per sessioni più lunghe, lavora in un ciclo: di' all'agente di fare commit man mano che procede, ed esegui yoloai apply da un altro terminale ogni volta che vuoi portare i commit finiti nel tuo progetto reale. Ogni apply porta solo i nuovi commit dall'ultima volta. Quando sei soddisfatto del risultato, fai push come al solito e distruggi la sandbox. Vedi la Guida all'uso per il flusso di lavoro completo.

Demo

Creazione di una sandbox, invio del prompt all'agente e applicazione dei risultati:

https://github.com/user-attachments/assets/9d6740b4-a34e-4253-82ec-cb0e4c7a8bd9

Funzionalità

Sandboxing

  • Sei backend: Docker, Podman, containerd (Kata), Apple Container, Tart e Seatbelt. Funziona su Linux, macOS e Windows (WSL2).
  • Forza di isolamento selezionabile per sandbox, da runc attraverso gVisor fino alle VM Kata (QEMU o Firecracker).
  • Policy di rete per sandbox: aperta, allowlist o nessuna.
  • Ambiente minimale dentro la sandbox. Qualsiasi cosa dall'host è un opt-in esplicito (--env, --dir).
  • Limiti di risorse (--cpus, --memory) e port forwarding (--port).
  • Copie economiche della workdir: cloni dell'intero albero su macOS (APFS clonefile), reflink per file su filesystem Linux che li supportano (btrfs, XFS). I filesystem senza reflink (ext4) ricevono una copia normale.
  • .gitignore rispettato: qualsiasi cosa ignorata NON viene copiata nella sandbox (pratica di sicurezza per le credenziali di sviluppo su disco).

Credenziali

Categorie