Combien de tokens coûte un fichier CLAUDE.md ?
Votre `CLAUDE.md` est lu avant la première demande et accompagne toutes les requêtes suivantes. Le cache réduit son prix sans l'annuler : chaque ligne doit être utile.
CLAUDE.md est un fichier Markdown d'instructions permanentes que Claude Code place dans la fenêtre de contexte au démarrage. Il ne fait pas partie du prompt système : Claude Code l'envoie comme message utilisateur juste après celui-ci. Claude le traite comme une consigne, pas comme une configuration garantie.
Le modèle ne garde rien entre les requêtes. Claude Code renvoie donc tout le contexte à chaque appel : prompt système, projet, messages antérieurs et résultats d'outils. Chaque usage d'outil crée un appel. Une demande qui fait lire cinq fichiers puis lancer les tests peut ainsi produire plusieurs requêtes contenant chacune votre CLAUDE.md entier.
Chaque ligne est donc payée à chaque requête : moins cher tant que le cache tient, plus cher lorsque le préfixe doit être réécrit. Gardez le fichier court et déplacez ce qui n'est pas utile à chaque tâche vers des fichiers chargés au besoin.
Quels fichiers sont chargés et quand
Claude Code réunit tous les fichiers de mémoire trouvés, sans qu'un niveau remplace le précédent. En septembre 2026, sa documentation distingue les sources suivantes :
- Règle administrée : un
CLAUDE.mddéployé dans toute l'organisation, par exemple/etc/claude-code/CLAUDE.mdsur Linux. On ne peut pas l'exclure. - Utilisateur :
~/.claude/CLAUDE.mdet~/.claude/rules/, appliqués à tous vos projets. - Projet :
./CLAUDE.mdou./.claude/CLAUDE.md, ainsi que les règles.claude/rules/sans champpaths, partageables dans Git. - Local :
./CLAUDE.local.md, notes personnelles propres au projet, ajoutées à.gitignore. - Mémoire automatique : les 200 premières lignes ou 25 Kio de l'index
MEMORY.md. Les fichiers thématiques qu'il indique ne sont lus qu'au besoin.
Les fichiers du répertoire courant et de ses parents sont chargés au lancement. Le CLAUDE.md d'un sous-répertoire n'arrive que quand Claude y lit un fichier ; une règle dotée de paths n'arrive que pour un fichier concerné. Les imports sont trompeurs : @path/to/file charge immédiatement le fichier visé, jusqu'à quatre niveaux. Découper un long fichier en imports améliore le rangement, sans économiser de tokens.
Pourquoi le cache ne rend pas le fichier gratuit
Avec le cache des prompts, l'API compare le début de la requête avec les données traitées récemment et facture la partie identique à tarif réduit. Claude Code place en tête les éléments stables : prompt système et outils, puis contexte du projet et fichiers de mémoire, enfin conversation. Sur un tour ordinaire, CLAUDE.md est donc une lecture du cache.
Aux prix publics de l'API Anthropic en septembre 2026, cette lecture coûte un dixième du tarif d'entrée sur la plupart des modèles Claude, et moins sur quelques nouveaux modèles. Une écriture coûte 1,25 fois le tarif de base pour cinq minutes, ou deux fois pour une heure. Dès que le préfixe doit être reconstruit, CLAUDE.md revient plus cher que de l'entrée ordinaire. Plusieurs situations le provoquent :
- Une pause au-delà de la durée du cache : une heure pour la conversation principale avec un abonnement Claude dans l'usage inclus, cinq minutes par défaut avec une clé API.
- Un changement de modèle, chacun ayant son cache, ou de niveau d'effort sur la plupart des modèles.
- Une modification des outils placés avant le fichier, par exemple la connexion d'un serveur MCP dont les définitions sont chargées d'emblée.
- Un sous-agent autre que les agents intégrés Explore et Plan : chacun charge les
CLAUDE.mddans son propre contexte et construit son propre cache, de cinq minutes par défaut même sur abonnement. - Une session lancée dans un autre arbre de travail ou répertoire, car le cache est pratiquement lié au répertoire.
Le cache change le prix, pas la taille. Le fichier occupe la fenêtre à chaque requête et laisse moins de place avant le compactage automatique. Les fichiers longs sont également moins bien suivis, chaque règle recevant moins d'attention. Sur abonnement, il n'y a pas de facture au token, mais le même contexte consomme vos limites d'usage.
Mesurer ce que coûte le vôtre
Ouvrez une nouvelle session et, avant toute demande, regardez ce qui occupe déjà la fenêtre :
/contextVentile la fenêtre par catégorie et liste les fichiers CLAUDE.md, règles et mémoires chargés.
/memory liste vos fichiers de mémoire et permet d'en ouvrir un dans l'éditeur. Depuis Claude Code v2.1.251, /usage ajoute une ligne Prompt cache (main) montrant la part de l'entrée servie depuis le cache et le nombre de ratés. Si ce nombre augmente, le préfixe, fichiers de mémoire compris, est réécrit régulièrement.
Ce qui doit y rester
Pour Anthropic, la question à poser à chaque ligne est simple : sa suppression ferait-elle commettre une erreur à Claude ? Sinon, retirez-la. Le contenu réellement nécessaire est généralement court :
- Commandes de compilation, de test et de contrôle que Claude ne peut pas deviner.
- Règles de style différentes des défauts, sans répéter ce qu'impose déjà le formateur.
- Conventions du dépôt : noms de branches, commits et demandes de fusion.
- Décisions d'architecture propres au projet.
- Particularités de l'environnement, comme une variable obligatoire ou un service à lancer.
- Pièges dont le comportement peu évident a déjà coûté du temps.
Rédigez des règles vérifiables : « Lancez npm test avant le commit » est plus utile que « testez vos modifications ». La documentation vise moins de 200 lignes par fichier.
Quoi déplacer, et où
La plupart des éléments d'un CLAUDE.md trop long ne sont pas erronés ; ils se trouvent au mauvais endroit. Chaque catégorie a une place moins coûteuse :
- Ce que Claude peut lire dans le code, comme l'arborescence, les dépendances et les descriptions de fichiers : supprimez-le.
- Une longue référence d'API ou un guide de style : conservez-le séparément et mentionnez son chemin sans
@, afin que Claude ne l'ouvre que si la tâche le demande. - Une procédure en plusieurs étapes, comme une liste de livraison : transformez-la en skill. Seule sa courte description charge au départ ; le reste attend son usage.
- Des règles limitées à une partie du code : un fichier
.claude/rules/avecpaths, ou unCLAUDE.mddans le sous-répertoire concerné. - Une action obligatoire après chaque modification, comme le formatage : un hook. Il n'occupe pas le contexte s'il ne renvoie aucune sortie, et il s'exécute réellement.
Comment le raccourcir
Commencez par l'outil fourni avec Claude Code. Depuis v2.1.206, /doctor suggère des coupes dans un CLAUDE.md versionné : contenu déductible du code, habitudes sans valeur et consignes à déplacer vers des skills ou fichiers imbriqués. Il garde les pièges, leurs raisons et les conventions particulières.
/doctorPrésente d'abord son diagnostic et demande avant de modifier un fichier.
Faites ensuite quelques vérifications manuelles :
- Supprimez une règle que Claude suit déjà spontanément, puis vérifiez si son comportement change.
- Placez les notes pour les mainteneurs dans des commentaires HTML en bloc
<!-- ... -->, retirés avant l'envoi au modèle. - Résolvez les contradictions : deux règles opposées coûtent deux fois et Claude peut suivre l'une ou l'autre.
- Dans un monorepo, excluez les fichiers des autres équipes avec
claudeMdExcludes. - Pour un sous-agent personnalisé qui n'en a pas besoin, définissez
omitClaudeMd: true(v2.1.271 ou plus).
AGENTS.md et Codex CLI
Codex CLI lit AGENTS.md à la place. D'après sa documentation en septembre 2026, il construit une chaîne d'instructions une fois par exécution, généralement une fois par session interactive :
- Global : dans
~/.codex, ouCODEX_HOMEs'il est défini,AGENTS.override.mds'il existe, sinonAGENTS.md. - Projet : de la racine, généralement celle de Git, au répertoire de lancement, au plus un fichier par niveau :
AGENTS.override.md, puisAGENTS.md, puis les noms deproject_doc_fallback_filenames. - Codex les joint de la racine vers le répertoire courant, ignore les fichiers vides et s'arrête à
project_doc_max_bytes, soit 32 Kio par défaut.
Le résultat entre dans le premier tour, puis accompagne toutes les requêtes. Pour prolonger les limites d'usage, Codex conseille de réduire AGENTS.md et de placer les règles dans les répertoires concernés. En septembre 2026, sa grille de crédits facture l'entrée en cache à un dixième de l'entrée fraîche, sans frais distincts d'écriture. Pour voir les instructions reçues par le modèle :
codex debug prompt-inputAffiche l'entrée visible par le modèle en JSON, fichiers d'instructions compris.
Un fichier peut servir aux deux agents. Depuis v2.1.277, Claude Code lit AGENTS.md s'il ne trouve ni CLAUDE.md ni CLAUDE.local.md dans le répertoire de travail ou ses parents. Sinon, placez @AGENTS.md au début de CLAUDE.md. Claude Code ne lit pas AGENTS.override.md.
Le coût fixe et le coût variable
Raccourcir les instructions diminue la part fixe de chaque requête. Le reste dépend de ce que la tâche ajoute : fichiers lus, sorties de commandes et historique. Indiquer le fichier concerné et ouvrir une session par tâche réduit cette part.
Pour lui imposer un plafond, capsul pilote le Claude Code ou Codex CLI auquel vous êtes déjà connecté, envoie ce que demande la tâche sous le budget de tokens fixé et indique ce qu'il a écarté. Les résultats mesurés figurent sur la page du banc d'essai.
Questions
Quelle longueur pour un fichier CLAUDE.md ?
La documentation de Claude Code recommande moins de 200 lignes par fichier en septembre 2026, car un fichier plus long occupe davantage de contexte et ses consignes sont moins bien suivies. Ce n'est pas une limite stricte : Claude Code charge jusqu'à 4 Mio par fichier et ignore les fichiers plus gros. Gardez toute ligne dont la suppression ferait commettre une erreur à Claude ; retirez les autres.
CLAUDE.md compte-t-il dans les limites d'usage de Claude ?
Oui. Il fait partie de l'entrée de chaque requête, et pèse donc sur les limites d'un abonnement ou sur une facture API. Le cache diminue le coût de chaque lecture tant qu'il reste actif. Quand il doit être reconstruit, le fichier est écrit à nouveau, à un prix supérieur à l'entrée ordinaire sur l'API.
Les imports @ dans CLAUDE.md réduisent-ils les tokens ?
Non. Les fichiers importés sont développés et chargés avec le fichier principal au démarrage, jusqu'à quatre niveaux. Leur coût est celui d'un texte collé directement. Pour garder une référence hors du contexte jusqu'à son besoin, indiquez son chemin sans @, ou utilisez un skill ou une règle liée à un chemin.
Codex lit-il CLAUDE.md et Claude Code lit-il AGENTS.md ?
Codex lit AGENTS.md ou AGENTS.override.md depuis son répertoire global puis la racine du projet jusqu'au répertoire courant. Depuis v2.1.277, Claude Code lit AGENTS.md si aucun CLAUDE.md ni CLAUDE.local.md n'est présent dans le répertoire courant ou ses parents ; autrement, on peut l'importer avec @AGENTS.md. Un court fichier commun peut ainsi servir aux deux agents.
Modifier CLAUDE.md change-t-il la session en cours ?
Pas pour les fichiers de projet et d'utilisateur, lus une seule fois au démarrage. Leur modification prend effet après /clear, /compact ou un redémarrage, sans casser le cache dans l'intervalle. Un fichier imbriqué ou une règle liée à un chemin encore non chargé prend en revanche sa nouvelle version quand Claude lit pour la première fois un fichier concerné.
$ npm i -g @penra/capsul