claude-mem est un plugin qui donne à Claude Code une mémoire qui survit à la fermeture du terminal. Il capture automatiquement ce que tu fais pendant tes sessions, le compresse en résumés, et réinjecte le contexte utile au démarrage de la session suivante. Tu ne réexpliques plus ton projet à chaque fois.
Claude Code n'a aucune mémoire native entre deux sessions. Tu fermes le terminal, tout est perdu. La session d'après, tu repasses cinq à dix minutes à réexpliquer ton stack, tes conventions, les décisions déjà prises et les pistes déjà écartées. Sur un projet qui dure, ce temps s'accumule — et tu paies ces tokens à chaque fois.
Une seule commande, depuis n'importe quel terminal :
Ou depuis Claude Code, via la marketplace de plugins :
Redémarre Claude Code. À partir de la session suivante, le contexte des sessions précédentes remonte tout seul.
Ne fais pas npm install -g claude-mem. Le paquet existe bien sur npm, mais il n'installe que la bibliothèque : aucun hook n'est enregistré, le worker ne démarre pas, et rien n'est jamais capturé. Tu crois que c'est installé, la base reste vide. Passe par npx claude-mem install ou par /plugin.
37700, avec une interface web pour voir le flux mémoire en direct~/.claude-mem/mem-search — pour interroger l'historique en langage naturelPrérequis : Node 20 minimum. Bun et uv sont installés automatiquement s'ils manquent.
C'est l'étape que tout le monde saute. Le worker peut tourner pendant des jours avec une base vide sans jamais te prévenir. Vérifie l'état réel :
/api/stats te renvoie le nombre d'observations, de sessions et de résumés stockés. Si "observations": 0 après plusieurs vraies sessions de travail, rien n'est capturé — inutile d'attendre.
En pratique tu passes par le skill mem-search et tu poses ta question en français (« on avait réglé ça comment la dernière fois ? »). En direct, l'API répond aussi :
C'est le cœur du truc et ça explique pourquoi claude-mem ne fait pas exploser ton contexte : search renvoie un index compact avec des IDs (~50-100 tokens par résultat), timeline replace un résultat dans son contexte chronologique, et get_observations ne va chercher le détail complet (~500-1000 tokens) que pour les IDs que tu as retenus. On filtre avant de charger — environ 10× de tokens économisés par rapport à tout rapatrier.
secret-tool dans le PATH (paquet libsecret-tools), la lecture échoue et l'IA de compression ne s'authentifie pas. Le log dit Linux libsecret lookup failed.En cas de doute, les logs datés sont dans ~/.claude-mem/logs/ et disent exactement ce qui se passe.
<private> sont exclus du stockageclaude-mem automatise tout via une base de données. L'approche inverse — cinq fichiers Markdown que tu écris et relis toi-même — est détaillée dans Les 5 couches mémoire de Claude Code. Plus de contrôle, plus de discipline. Les deux se combinent très bien : claude-mem pour l'historique, les 5 couches pour les décisions que tu veux figer.