Gestion des Sessions
Le SDK Claude Code fournit des capacités de gestion de session pour gérer l’état des conversations, la persistance et la reprise. Ce guide couvre comment les sessions sont créées, gérées, persistées dans des fichiers et reprises au sein du SDK.Architecture des Sessions
Le SDK Claude Code implémente un système de gestion de session basé sur des fichiers qui gère la persistance des conversations et la restauration d’état.Structure des Fichiers de Session
Les sessions sont persistées dans le système de fichiers local dans un format structuré :Format des Métadonnées de Session
Le fichiersessions.json
stocke les métadonnées de toutes les sessions :
Format de Transcription de Session
Les transcriptions de session sont stockées sous forme de fichiers JSONL (JSON Lines), avec chaque ligne représentant un message ou un événement :- Messages utilisateur : Entrée de l’utilisateur
- Messages assistant : Réponses de Claude
- Points de contrôle : États sauvegardés dans la conversation (par exemple, après avoir terminé une tâche)
- Utilisation d’outils : Enregistrements de quand les outils ont été invoqués et leurs résultats
Cycle de Vie des Sessions
Création et Initialisation
Quand une session démarre, le SDK effectue plusieurs étapes d’initialisation :- Générer l’ID de Session : Crée un identifiant unique pour la session
- Créer le Répertoire de Projet : Configure l’emplacement de stockage spécifique au projet
- Initialiser le Fichier de Transcription : Crée un fichier JSONL vide pour la conversation
- Stocker les Métadonnées Initiales : Enregistre l’heure de création de la session et la configuration
Obtenir l’ID de Session
L’ID de session est fourni dans le message système initial lorsque vous démarrez une conversation. Vous pouvez le capturer pour une utilisation ultérieure :Persistance de l’État de Session
Le SDK persiste automatiquement l’état de session sur le disque :- Après chaque échange de messages : La transcription est mise à jour
- Lors d’invocations d’outils : L’utilisation d’outils et les résultats sont enregistrés
- Aux points de contrôle : Les états importants de conversation sont marqués
- À la fin de session : L’état final est sauvegardé