La mémoire dans Claude Code
Ce que tu vas apprendre
- Comment Claude Code se souvient de ton projet entre les sessions
- La hiérarchie des fichiers mémoire (projet, personnel, auto)
- Comment initialiser et modifier la mémoire
Prérequis
- Claude Code v2.1+
- Un projet avec un dépôt git (recommandé)
Le concept en 30 secondes
Claude Code charge automatiquement des fichiers CLAUDE.md au démarrage. Ces fichiers contiennent les règles de ton projet, tes préférences, les conventions d’équipe. Ils sont organisés en niveaux : organisation > projet > personnel > local. Plus un fichier est proche de ton dossier de travail, plus il a de poids.
Étapes
1. Initialiser la mémoire projet
Dans ton projet :
/init
Claude crée CLAUDE.md ou .claude/CLAUDE.md avec une structure de base.
Mode interactif amélioré (v2.1+) :
CLAUDE_CODE_NEW_INIT=1 claude
/init
2. Éditer la mémoire
/memory
Ouvre les fichiers mémoire dans ton éditeur système. Claude te propose :
- Managed Policy Memory
- Project Memory (
./CLAUDE.md) - User Memory (
~/.claude/CLAUDE.md) - Local Project Memory (
./CLAUDE.local.md)
3. Comprendre la hiérarchie
Ordre de priorité (du plus fort au plus faible) :
@diagram:scale
Priorité de la mémoire, du plus fort (gauche) au plus faible (droite)
Organisation :: /Library/Application Support/ClaudeCode/CLAUDE.md — partagé
Organisation modulaire :: managed-settings.d/*.md — partagé
Projet :: ./CLAUDE.md ou ./.claude/CLAUDE.md — partagé (git)
Projet modulaire :: ./.claude/rules/*.md — partagé (git)
Utilisateur :: ~/.claude/CLAUDE.md — non partagé
Utilisateur modulaire :: ~/.claude/rules/*.md — non partagé
Projet local :: ./CLAUDE.local.md — git-ignoré
Auto :: ~/.claude/projects/<projet>/memory/ — non partagé
4. Créer un CLAUDE.md projet minimal
Fichier ./CLAUDE.md :
# Mon Projet
## Stack
- Node.js 20, React 18, PostgreSQL 16
- TypeScript strict
- Tests avec Vitest
## Conventions
- 2 espaces d'indentation
- Pas de `any` implicite
- Messages de commit en conventional commits
- PR requise avant merge sur main
## Commandes
- `npm run dev` → serveur local
- `npm test` → tests
- `npm run lint` → linting
- `npm run build` → build prod
Garde-le sous 300 lignes. Moins c’est long, plus c’est lu.
5. Ajouter des règles modulaires
Crée .claude/rules/api.md pour les standards API :
---
paths: src/api/**/*.ts
---
# Règles API
- Validation Zod obligatoire sur tous les endpoints
- Format de réponse uniforme : `{ success, data, error }`
- Pagination par curseur, pas par offset
- Rate limit : 1000 req/h authentifié
Les fichiers dans .claude/rules/ sont découverts récursivement. Les symlinks sont supportés.
6. Utiliser les imports
Référence un fichier existant au lieu de le copier :
# Projet
@README.md
@docs/architecture.md
@package.json
- Chemins relatifs et absolus supportés (
@~/.claude/mes-regles.md) - 5 niveaux d’imbrication max
- Premier import externe → dialogue d’approbation
- Pas d’évaluation dans les blocs de code
7. Gérer l’auto-mémoire
Claude écrit automatiquement dans ~/.claude/projects/<projet>/memory/MEMORY.md.
- Les 200 premières lignes (ou 25 Ko) sont chargées au démarrage
- Les fichiers thématiques sont chargés à la demande
- Désactive avec
CLAUDE_CODE_DISABLE_AUTO_MEMORY=1 claude - Change le dossier avec
autoMemoryDirectorydanssettings.json(v2.1.74+)
8. Exclure des fichiers mémoire
Dans .claude/settings.json ou ~/.claude/settings.json :
{
"claudeMdExcludes": [
"packages/legacy-app/CLAUDE.md",
"vendors/**/CLAUDE.md"
]
}
Utile dans les monorepos pour réduire le bruit.
Vérification
-
/initcrée un fichier CLAUDE.md -
/memoryouvre l’éditeur système - Les règles de
./.claude/rules/s’appliquent aux bons fichiers -
@README.mdimporte le contenu du README -
CLAUDE.local.mdest dans.gitignore
Pièges courants
- Mémoire trop longue → Garde CLAUDE.md sous 300 lignes. Déplace les détails dans
.claude/rules/ - Règles obsolètes → Relis et met à jour régulièrement
- Secrets dans CLAUDE.md → Jamais. Utilise des variables d’environnement
- Conflits de priorité → Le fichier le plus proche du dossier courant l’emporte
- Auto-mémoire désactivée → Vérifie la version (v2.1.59+ requis)
Récapitulatif
| Fichier | Quand l’utiliser | Commit git |
|---|---|---|
./CLAUDE.md |
Règles projet, stack, conventions | Oui |
./.claude/rules/*.md |
Règles spécifiques par dossier | Oui |
~/.claude/CLAUDE.md |
Préférences personnelles | Non |
./CLAUDE.local.md |
Overrides personnels sur ce projet | Non |
~/.claude/projects/.../MEMORY.md |
Notes auto-écrites par Claude | Non |
Pour aller plus loin
Inspiré du guide claude-howto de luongnv89 (MIT)