Où sont stockées les informations d’historique des sessions Claude Code ?
Réponse courte : tout est stocké localement sous ~/.claude/projects/ sous forme de fichiers JSONL — pas de sync cloud, pas d’historique de session lié au compte.
Arborescence
~/.claude/
├── projects/ # ← tout l’historique des sessions est ici
│ ├── -Users-you-Documents-app/ # un répertoire par projet (chemin transformé)
│ │ ├── 9a1b2c3d-….jsonl # un fichier par session
│ │ └── 7c2d3e4f-….jsonl
│ └── -home-you-shop-api/
│ └── …
├── claude.json # configuration globale (MCP, thème, état des projets)
└── … (cache, journaux, stats et autres fichiers auxiliaires)
Règle de nommage des répertoires projet : chaque caractère non alphanumérique (/, _, …) du chemin devient -. Toutes les sessions d’un projet se retrouvent donc dans un même répertoire — c’est aussi ce qui permet aux visualiseurs de « grouper par projet ».
Que contient un fichier JSONL
JSONL = un objet JSON indépendant par ligne. Un fichier de session enregistre la conversation complète dans l’ordre chronologique. Principaux types d’entrées :
| type | Contenu |
|---|---|
user | Vos saisies (texte / images) et les résultats d’outils renvoyés |
assistant | Réponses du modèle : texte, blocs de réflexion, appels tool_use et usage des tokens |
system | Événements système (hooks, etc.) |
summary / ai-title | Résumé de session et titre généré automatiquement |
cost-state | Instantané coût & usage (coût total, lignes ±, durée API) |
Chaque entrée embarque aussi des métadonnées : timestamp, cwd (chemin du projet), gitBranch, version, sessionId, etc. Autrement dit, le fichier d’historique est plus complet que ce que montre le terminal — raisonnement, paramètres et résultats bruts des outils, consommation de tokens : tout y est.
Ce que cela implique
- La confidentialité est entre vos mains : les fichiers ne quittent jamais votre machine. En contrepartie, sauvegardez
~/.claude/projects/avant de changer de machine ou de réinstaller, sinon l’historique est perdu ; - Les fichiers peuvent être sensibles : les sessions contiennent des extraits de code source, des chemins, des sorties de commandes, parfois des secrets — ne partagez pas les .jsonl à la légère ;
- La taille grimpe : après quelques mois d’usage intensif, une session peut atteindre plusieurs (dizaines de) Mo et le répertoire complet des centaines de Mo — c’est normal.
Comment lire cet historique confortablement
Lire du JSONL brut est un pensum. Ouvrez le répertoire avec CCViewer (glisser-déposer du dossier entier pris en charge) : les sessions se regroupent par projet, et Markdown, blocs de réflexion, appels d’outils et statistiques de coût sont rendus graphiquement — l’analyse restant uniquement dans votre navigateur, préservant la propriété « les données ne quittent jamais cette machine ».
Ouvrez la page et déposez un fichier
.jsonl — ou tout le dossier ~/.claude/projects/. Rendu Markdown, blocs de réflexion, appels d’outils, statistiques de tokens et de coûts : tout se passe localement dans votre navigateur, rien n’est envoyé.