
Il tuo agente è un rischio per la sicurezza, quindi trattalo come tale. yoloAI gestisce correttamente il sandboxing degli agenti AI.
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.
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 │
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:
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.--network-isolated limita il traffico in uscita agli endpoint API dell'agente più i domini che permetti. --network-none rimuove la rete completamente.Vedi Sicurezza per il modello completo, incluse le limitazioni oneste.
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.
brew install --cask kstenerud/tap/yoloai
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).
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).
# 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
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.
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.
Creazione di una sandbox, invio del prompt all'agente e applicazione dei risultati:
https://github.com/user-attachments/assets/9d6740b4-a34e-4253-82ec-cb0e4c7a8bd9
Sandboxing
--env, --dir).--cpus, --memory) e port forwarding (--port).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