Claude Agent SDK differisce dalle API LLM tradizionali senza stato in quanto mantiene lo stato conversazionale ed esegue comandi in un ambiente persistente. Questa guida copre l'architettura, le considerazioni di hosting e le best practice per la distribuzione di agenti basati su SDK in produzione.
Per l'hardening della sicurezza oltre il sandboxing di base—inclusi i controlli di rete, la gestione delle credenziali e le opzioni di isolamento—vedi Distribuzione Sicura.
Per la sicurezza e l'isolamento, l'SDK dovrebbe essere eseguito all'interno di un ambiente container sandboxato. Questo fornisce isolamento dei processi, limiti di risorse, controllo di rete e filesystem effimeri.
L'SDK supporta anche la configurazione sandbox programmatica per l'esecuzione dei comandi.
Ogni istanza SDK richiede:
Dipendenze di runtime
npm install -g @anthropic-ai/claude-codeAllocazione di risorse
Accesso di rete
api.anthropic.comA differenza delle chiamate API senza stato, Claude Agent SDK opera come un processo a lunga esecuzione che:
Diversi provider si specializzano in ambienti container sicuri per l'esecuzione di codice AI:
Per opzioni self-hosted (Docker, gVisor, Firecracker) e configurazione dettagliata dell'isolamento, vedi Tecnologie di Isolamento.
Crea un nuovo container per ogni compito dell'utente, quindi distruggilo al completamento.
Ideale per compiti una tantum, l'utente può ancora interagire con l'AI mentre il compito è in corso di completamento, ma una volta completato il container viene distrutto.
Esempi:
Mantieni istanze di container persistenti per compiti a lunga esecuzione. Spesso esegui molteplici processi Claude Agent all'interno del container in base alla domanda.
Ideale per agenti proattivi che agiscono senza l'input dell'utente, agenti che servono contenuti o agenti che elaborano grandi quantità di messaggi.
Esempi:
Container effimeri che vengono idratati con cronologia e stato, possibilmente da un database o dalle funzionalità di ripresa della sessione dell'SDK.
Ideale per container con interazione intermittente dall'utente che avvia il lavoro e si spegne quando il lavoro è completato ma può essere continuato.
Esempi:
Esegui molteplici processi Claude Agent SDK in un container globale.
Ideale per agenti che devono collaborare strettamente insieme. Questo è probabilmente il pattern meno popolare perché dovrai impedire agli agenti di sovrascrivere l'uno l'altro.
Esempi:
Quando ospiti in container, esponi le porte per comunicare con le tue istanze SDK. La tua applicazione può esporre endpoint HTTP/WebSocket per i client esterni mentre l'SDK viene eseguito internamente all'interno del container.
Abbiamo scoperto che il costo dominante della gestione degli agenti è il token, i container variano in base a quello che fornisci ma un costo minimo è approssimativamente 5 centesimi all'ora di esecuzione.
Questo è probabilmente dipendente dal provider, diversi provider sandbox ti permetteranno di impostare diversi criteri per i timeout di inattività dopo i quali un sandbox potrebbe spegnersi. Vorrai sintonizzare questo timeout in base a quanto frequente pensi che la risposta dell'utente potrebbe essere.
Claude Code CLI è versionato con semver, quindi eventuali modifiche di rottura saranno versionate.
Poiché i container sono solo server, la stessa infrastruttura di logging che usi per il backend funzionerà per i container.
Una sessione di agente non avrà timeout, ma consigliamo di impostare una proprietà 'maxTurns' per impedire a Claude di rimanere bloccato in un loop.