Hosting des Agent SDK

Das Claude Agent SDK unterscheidet sich von herkömmlichen zustandslosen LLM-APIs dadurch, dass es den Konversationszustand aufrechterhält und Befehle in einer persistenten Umgebung ausführt. Dieser Leitfaden behandelt die Architektur, Hosting-Überlegungen und bewährte Praktiken für die Bereitstellung SDK-basierter Agenten in der Produktion.

Verstehen der SDK-Architektur

Langlebiges Prozessmodell

Im Gegensatz zu zustandslosen API-Aufrufen funktioniert das Claude Agent SDK als langlebiger Prozess, der:
  • Befehle ausführt in einer persistenten Shell-Umgebung
  • Dateioperationen verwaltet innerhalb eines Arbeitsverzeichnisses
  • Tool-Ausführung handhabt mit Kontext aus vorherigen Interaktionen

Hosting-Anforderungen

Container-basierte Sandboxing

Für Sicherheit und Isolation sollte das SDK innerhalb einer sandboxed Container-Umgebung laufen. Dies bietet:
  • Prozessisolation - Separate Ausführungsumgebung pro Sitzung
  • Ressourcenlimits - CPU-, Speicher- und Speicherbeschränkungen
  • Netzwerkkontrolle - Beschränkung ausgehender Verbindungen
  • Ephemere Dateisysteme - Sauberer Zustand für jede Sitzung

Systemanforderungen

Jede SDK-Instanz benötigt:
  • Laufzeit-Abhängigkeiten
    • Python 3.10+ (für Python SDK) oder Node.js 18+ (für TypeScript SDK)
    • Node.js (erforderlich für Claude Code CLI)
    • Claude Code CLI: npm install -g @anthropic-ai/claude-code
  • Ressourcenzuteilung
    • Empfohlen: 1GiB RAM, 5GiB Festplattenspeicher und 1 CPU (variieren Sie dies je nach Ihrer Aufgabe nach Bedarf)
  • Netzwerkzugang
    • Ausgehende HTTPS zu api.anthropic.com
    • Optional: Zugang zu MCP-Servern oder externen Tools

Sandbox-Anbieter-Optionen

Mehrere Anbieter spezialisieren sich auf sichere Container-Umgebungen für AI-Code-Ausführung:

Produktions-Bereitstellungsmuster

Muster 1: Ephemere Sitzungen

Erstellen Sie einen neuen Container für jede Benutzeraufgabe und zerstören Sie ihn dann, wenn er abgeschlossen ist. Am besten für einmalige Aufgaben, der Benutzer kann immer noch mit der AI interagieren, während die Aufgabe abgeschlossen wird, aber sobald sie abgeschlossen ist, wird der Container zerstört. Beispiele:
  • Bug-Untersuchung & -Behebung: Debuggen und Lösen eines spezifischen Problems mit relevantem Kontext
  • Rechnungsverarbeitung: Extrahieren und Strukturieren von Daten aus Belegen/Rechnungen für Buchhaltungssysteme
  • Übersetzungsaufgaben: Übersetzen von Dokumenten oder Inhalts-Batches zwischen Sprachen
  • Bild-/Videoverarbeitung: Anwenden von Transformationen, Optimierungen oder Extrahieren von Metadaten aus Mediendateien

Muster 2: Langlebige Sitzungen

Aufrechterhalten persistenter Container-Instanzen für langlebige Aufgaben. Oft laufen mehrere Claude Agent-Prozesse innerhalb des Containers basierend auf der Nachfrage. Am besten für proaktive Agenten, die Aktionen ohne Benutzereingabe durchführen, Agenten, die Inhalte bereitstellen, oder Agenten, die große Mengen von Nachrichten verarbeiten. Beispiele:
  • E-Mail-Agent: Überwacht eingehende E-Mails und triagiert, antwortet oder führt autonom Aktionen basierend auf dem Inhalt durch
  • Site Builder: Hostet benutzerdefinierte Websites pro Benutzer mit Live-Bearbeitungsfähigkeiten, die über Container-Ports bereitgestellt werden
  • Hochfrequenz-Chat-Bots: Handhabt kontinuierliche Nachrichtenströme von Plattformen wie Slack, wo kritische schnelle Antwortzeiten erforderlich sind

Muster 3: Hybrid-Sitzungen

Ephemere Container, die mit Historie und Zustand hydratisiert werden, möglicherweise aus einer Datenbank oder aus den Sitzungswiederaufnahme-Features des SDK. Am besten für Container mit intermittierender Benutzerinteraktion, die Arbeit startet und herunterfährt, wenn die Arbeit abgeschlossen ist, aber fortgesetzt werden kann. Beispiele:
  • Persönlicher Projektmanager: Hilft bei der Verwaltung laufender Projekte mit intermittierenden Check-ins, behält den Kontext von Aufgaben, Entscheidungen und Fortschritt bei
  • Tiefgreifende Recherche: Führt mehrstündige Recherche-Aufgaben durch, speichert Erkenntnisse und setzt die Untersuchung fort, wenn der Benutzer zurückkehrt
  • Kundensupport-Agent: Handhabt Support-Tickets, die sich über mehrere Interaktionen erstrecken, lädt Ticket-Historie und Kundenkontext

Muster 4: Einzelne Container

Führen Sie mehrere Claude Agent SDK-Prozesse in einem globalen Container aus. Am besten für Agenten, die eng zusammenarbeiten müssen. Dies ist wahrscheinlich das am wenigsten beliebte Muster, da Sie verhindern müssen, dass sich Agenten gegenseitig überschreiben. Beispiele:
  • Simulationen: Agenten, die in Simulationen wie Videospielen miteinander interagieren.

FAQ

Wie kommuniziere ich mit meinen Sandboxes?

Beim Hosting in Containern exponieren Sie Ports, um mit Ihren SDK-Instanzen zu kommunizieren. Ihre Anwendung kann HTTP/WebSocket-Endpunkte für externe Clients exponieren, während das SDK intern innerhalb des Containers läuft.

Was kostet das Hosting eines Containers?

Wir haben festgestellt, dass die dominierenden Kosten beim Bereitstellen von Agenten die Tokens sind, Container variieren basierend auf dem, was Sie bereitstellen, aber Mindestkosten betragen etwa 5 Cent pro Stunde Laufzeit.

Wann sollte ich inaktive Container herunterfahren vs. sie warm halten?

Dies ist wahrscheinlich anbieterabhängig, verschiedene Sandbox-Anbieter lassen Sie verschiedene Kriterien für Leerlauf-Timeouts festlegen, nach denen eine Sandbox herunterfahren könnte. Sie werden dieses Timeout basierend darauf abstimmen wollen, wie häufig Sie denken, dass Benutzerantworten auftreten könnten.

Wie oft sollte ich die Claude Code CLI aktualisieren?

Die Claude Code CLI ist mit semver versioniert, sodass alle breaking changes versioniert werden.

Wie überwache ich Container-Gesundheit und Agent-Performance?

Da Container nur Server sind, funktioniert die gleiche Logging-Infrastruktur, die Sie für das Backend verwenden, auch für Container.

Wie lange kann eine Agent-Sitzung laufen, bevor sie ein Timeout erreicht?

Eine Agent-Sitzung wird kein Timeout erreichen, aber wir empfehlen, eine ‘maxTurns’-Eigenschaft zu setzen, um zu verhindern, dass Claude in einer Schleife stecken bleibt.

Nächste Schritte