Esecuzione in sandbox per agenti di codice
Non esegua mai il codice generato dal modello sul proprio host: utilizzi sandbox gVisor, Firecracker o E2B.
Esecuzione in sandbox per agenti di codice è una lezione AI Agents gratuita su CoddyKit. Questa è la lezione 3 di 4. Puoi leggere la lezione completa qui gratuitamente — poi esercitati direttamente nel browser con un editor di codice integrato e un tutor IA disponibile 24/7. Fa parte del percorso di apprendimento AI Agents, e i tuoi progressi si sincronizzano tra il web e l'app CoddyKit. Il corso AI Agents include 4 lezioni in totale.
Parti di questa lezione non sono ancora state tradotte e vengono mostrate in inglese.
Perché usare una sandbox?
Gli agent di codice (Devin, Claude Code, OpenDevin) eseguono codice generato dal modello. Se esegue quel codice sul suo host, il modello può:
- Leggere segreti/chiavi API
- Eliminare file
- Eseguire chiamate di rete in uscita
- Minare criptovalute
Una sandbox è un ambiente isolato che limita i danni.
Livelli di isolamento
| Livello | Strumento | Utilizzo |
|---|---|---|
| Processo | subprocess + chroot | Bassa sicurezza, solo sviluppo |
| Container | Docker | Impostazione predefinita adeguata |
| VM / microVM | Firecracker, gVisor | Isolamento elevato |
| Sandbox ospitata | E2B, Daytona | La soluzione più semplice per la produzione |
Docker Sandbox Basics
docker run \
--rm \
--network=none \
--memory=512m \
--cpus=0.5 \
--read-only \
--user=nobody \
-v /tmp/work:/work:rw \
python:3.11-slim \
python /work/script.pyIsolamento della rete
--network=none disabilita il traffico in uscita. Per alcune attività serve un accesso limitato a Internet: utilizzi un proxy di egress che consenta l'accesso solo a host specifici.
Limiti delle risorse
I limiti impediscono un consumo incontrollato di CPU/memoria:
--memory— limite della RAM--cpus— quota di CPU--pids-limit— numero di processi--ulimit— descrittori di file
Firecracker/gVisor
Per un isolamento più forte rispetto a Docker:
- Firecracker — microVM di AWS, utilizzata da Lambda
- gVisor — kernel nello spazio utente di Google, sostitutivo di Docker
- Kata Containers — esperienza Docker con isolamento tramite VM
Sandbox ospitata E2B
E2B (e2b.dev) offre una sandbox remota tramite API:
# pip install e2b
import e2b
sandbox = e2b.Sandbox(template='python', api_key='...')
result = sandbox.run_code('print(2 + 2)')
print(result.stdout) # '4'
sandbox.close()Daytona
Daytona offre funzionalità simili di sandbox ospitata, orientate agli ambienti di sviluppo.
Sandbox del file system
Monti in lettura-scrittura solo ciò di cui l'agent ha bisogno; tutto il resto deve essere in sola lettura o nascosto:
docker run -v ${PWD}/workdir:/workdir:rw \
-v ${PWD}/readonly:/readonly:ro ...Limiti di tempo
Limiti il tempo totale di esecuzione per impedire cicli senza fine:
docker run --rm --stop-timeout 30 ... \
python -c 'import resource; resource.setrlimit(resource.RLIMIT_CPU, (30, 30)); exec(open("/work/script.py").read())'Logging
Acquisisca ogni comando, ogni output e ogni modifica ai file. Per gli agent ad alto rischio, registri nel log di audit l'intera sessione della sandbox.
Sandbox multi-tenant
Le sandbox per utente impediscono che gli utenti alterino lo stato degli altri. Avvii una sandbox nuova per ogni sessione e la elimini al termine.
Costi e sicurezza
Un isolamento più forte comporta costi maggiori (overhead per VM). Abbini il livello al rischio:
- Tutorial o funzionalità sandbox per gli utenti: Docker è sufficiente
- Codice di produzione che accede a segreti: Firecracker/E2B
Blocco della rete
Come impedire a un agente di codice di effettuare qualsiasi chiamata di rete in uscita?
Riepilogo
Non eseguire mai codice generato dal modello sul proprio host. Scegliere il livello di isolamento in base al rischio: Docker per lo sviluppo, gVisor / Firecracker / E2B per la produzione. Impostare limiti per CPU, memoria, tempo e rete.
Domande Frequenti
La lezione «Esecuzione in sandbox per agenti di codice» è gratuita?
Sì — il testo completo di «Esecuzione in sandbox per agenti di codice» è gratuito qui sul web. Per esercitarvi in modo interattivo (un editor di codice integrato e un tutor IA 24/7) e sbloccare il resto del corso AI Agents, passa a CoddyKit PRO. Il corso AI Agents include 4 lezioni in totale.
Cosa imparerò in «Esecuzione in sandbox per agenti di codice»?
Non esegua mai il codice generato dal modello sul proprio host: utilizzi sandbox gVisor, Firecracker o E2B. Eserciti AI Agents con codice pratico che esegui direttamente nel browser, e un tutor IA 24/7 risponde alle tue domande mentre lavori sulla lezione.
Ho bisogno di esperienza per iniziare AI Agents?
Non è richiesta alcuna esperienza precedente. AI Agents su CoddyKit è strutturato per principianti e studenti avanzati, quindi puoi iniziare da qui o dall'inizio e procedere al tuo ritmo. Questa è la lezione 3 di 4.
Quanto tempo richiede la lezione «Esecuzione in sandbox per agenti di codice»?
La maggior parte delle lezioni CoddyKit richiede circa 5–10 minuti. Ogni lezione è breve e interattiva, quindi fai progressi costanti e riprendi esattamente da dove hai lasciato su web e app.
Posso scrivere ed eseguire codice in questa lezione AI Agents?
Sì. Ogni lezione AI Agents include un editor di codice integrato, quindi scrivi ed esegui codice reale direttamente nel tuo browser e ricevi feedback istantaneo dall'IA — nessuna configurazione locale necessaria.
Tutte le lezioni di questo corso
- Difese contro la prompt injection
- Filtraggio dell'output (Llama Guard, NeMo)
- Esecuzione in sandbox per agenti di codice
- Controllo degli accessi sugli strumenti