Session-Verwaltung
Das Claude Code SDK bietet Session-Verwaltungsfunktionen für die Handhabung von Konversationszuständen, Persistierung und Wiederaufnahme. Dieser Leitfaden behandelt, wie Sessions erstellt, verwaltet, in Dateien persistiert und innerhalb des SDK wiederaufgenommen werden.Session-Architektur
Das Claude Code SDK implementiert ein dateibasiertes Session-Verwaltungssystem, das Konversationspersistierung und Zustandswiederherstellung handhabt.Session-Dateistruktur
Sessions werden im lokalen Dateisystem in einem strukturierten Format persistiert:Session-Metadatenformat
Diesessions.json
-Datei speichert Metadaten über alle Sessions:
Session-Transkriptformat
Session-Transkripte werden als JSONL (JSON Lines)-Dateien gespeichert, wobei jede Zeile eine Nachricht oder ein Ereignis darstellt:- Benutzernachrichten: Eingaben vom Benutzer
- Assistentennachrichten: Antworten von Claude
- Checkpoints: Gespeicherte Zustände in der Konversation (z.B. nach Abschluss einer Aufgabe)
- Tool-Verwendung: Aufzeichnungen darüber, wann Tools aufgerufen wurden und deren Ergebnisse
Session-Lebenszyklus
Erstellung und Initialisierung
Wenn eine Session startet, führt das SDK mehrere Initialisierungsschritte durch:- Session-ID generieren: Erstellt eine eindeutige Kennung für die Session
- Projektverzeichnis erstellen: Richtet den projektspezifischen Speicherort ein
- Transkriptdatei initialisieren: Erstellt eine leere JSONL-Datei für die Konversation
- Anfangsmetadaten speichern: Zeichnet Session-Erstellungszeit und -Konfiguration auf
Abrufen der Session-ID
Die Session-ID wird in der anfänglichen Systemnachricht bereitgestellt, wenn Sie eine Konversation starten. Sie können sie für spätere Verwendung erfassen:Session-Zustandspersistierung
Das SDK persistiert automatisch den Session-Zustand auf die Festplatte:- Nach jedem Nachrichtenaustausch: Das Transkript wird aktualisiert
- Bei Tool-Aufrufen: Tool-Verwendung und -Ergebnisse werden aufgezeichnet
- An Checkpoints: Wichtige Konversationszustände werden markiert
- Bei Session-Ende: Der finale Zustand wird gespeichert