Le SDK Claude Agent diffère des API LLM sans état traditionnelles en ce qu'il maintient l'état conversationnel et exécute des commandes dans un environnement persistant. Ce guide couvre l'architecture, les considérations d'hébergement et les meilleures pratiques pour déployer des agents basés sur le SDK en production.
Pour le renforcement de la sécurité au-delà du sandboxing de base, y compris les contrôles réseau, la gestion des identifiants et les options d'isolation, voir Déploiement sécurisé.
Pour la sécurité et l'isolation, le SDK doit s'exécuter dans un environnement de conteneur en sandbox. Cela fournit l'isolation des processus, les limites de ressources, le contrôle réseau et les systèmes de fichiers éphémères.
Le SDK supporte également la configuration de sandbox programmatique pour l'exécution de commandes.
Chaque instance du SDK nécessite :
Dépendances d'exécution
npm install -g @anthropic-ai/claude-codeAllocation de ressources
Accès réseau
api.anthropic.comContrairement aux appels API sans état, le SDK Claude Agent fonctionne comme un processus de longue durée qui :
Plusieurs fournisseurs se spécialisent dans les environnements de conteneurs sécurisés pour l'exécution de code IA :
Pour les options auto-hébergées (Docker, gVisor, Firecracker) et la configuration détaillée de l'isolation, voir Technologies d'isolation.
Créez un nouveau conteneur pour chaque tâche utilisateur, puis détruisez-le une fois terminé.
Idéal pour les tâches ponctuelles, l'utilisateur peut toujours interagir avec l'IA pendant que la tâche se termine, mais une fois terminée, le conteneur est détruit.
Exemples :
Maintenir des instances de conteneurs persistantes pour les tâches de longue durée. Souvent, exécuter plusieurs processus Claude Agent à l'intérieur du conteneur en fonction de la demande.
Idéal pour les agents proactifs qui agissent sans l'entrée de l'utilisateur, les agents qui servent du contenu ou les agents qui traitent de grandes quantités de messages.
Exemples :
Conteneurs éphémères qui sont hydratés avec l'historique et l'état, possiblement à partir d'une base de données ou des fonctionnalités de reprise de session du SDK.
Idéal pour les conteneurs avec une interaction intermittente de l'utilisateur qui lance le travail et s'arrête lorsque le travail est terminé mais peut être continué.
Exemples :
Exécutez plusieurs processus Claude Agent SDK dans un conteneur global unique.
Idéal pour les agents qui doivent collaborer étroitement ensemble. C'est probablement le modèle le moins populaire car vous devrez empêcher les agents de se réécrire mutuellement.
Exemples :
Lors de l'hébergement dans des conteneurs, exposez les ports pour communiquer avec vos instances du SDK. Votre application peut exposer des points de terminaison HTTP/WebSocket pour les clients externes tandis que le SDK s'exécute en interne dans le conteneur.
Nous avons constaté que le coût dominant de la fourniture d'agents est les jetons, les conteneurs varient en fonction de ce que vous approvisionnez, mais un coût minimum est d'environ 5 cents par heure d'exécution.
Cela dépend probablement du fournisseur, différents fournisseurs de sandbox vous permettront de définir différents critères pour les délais d'inactivité après lesquels un sandbox pourrait s'arrêter. Vous voudrez ajuster ce délai d'expiration en fonction de la fréquence à laquelle vous pensez que la réponse de l'utilisateur pourrait se produire.
Claude Code CLI est versionné avec semver, donc tout changement de rupture sera versionné.
Puisque les conteneurs sont juste des serveurs, la même infrastructure de journalisation que vous utilisez pour le backend fonctionnera pour les conteneurs.
Une session d'agent n'expirera pas, mais nous recommandons de définir une propriété 'maxTurns' pour empêcher Claude de se bloquer dans une boucle.