read-once : Un crochet de code Claude qui empêche les lectures redondantes de fichiers

Un développeur a créé un crochet PreToolUse appelé read-once qui répond à la tendance de Claude Code à relire les mêmes fichiers pendant une session, ce qui consomme des jetons inutiles.
Le problème et la solution
Claude Code relit souvent des fichiers qu'il a déjà en contexte. Par exemple, ouvrir un fichier de 500 lignes, effectuer une petite modification et faire relire l'intégralité du fichier par Claude coûte environ 2 000+ jetons par lecture. Dans des sessions typiques, les mêmes fichiers peuvent être lus 5 à 10 fois.
Le crochet read-once suit les fichiers que Claude a lus dans la session en cours. Lorsque Claude tente de relire un fichier inchangé, le crochet le bloque et affiche un message tel que : "read-once : config.rs (~3 400 jetons) déjà en contexte (lu il y a 4 min, inchangé). Économies de session : ~12 000 jetons."
Comment cela fonctionne
- À la première lecture : Enregistre le chemin du fichier, l'heure de modification et l'horodatage, puis autorise la lecture normalement.
- À la relecture d'un fichier inchangé : Bloque la lecture puisque Claude a déjà le contenu.
- À la relecture d'un fichier modifié : Au lieu d'autoriser une relecture complète, le crochet calcule la différence et renvoie uniquement ce qui a changé. Claude a déjà l'ancienne version en contexte et n'a besoin que du delta. Pour un fichier de 500 lignes où 3 lignes ont changé, cela utilise ~30 jetons au lieu de ~2 000, économisant 80 à 95 % sur les itérations de fichiers.
Fonctionnalités et configuration
L'outil est conscient du TTL avec des entrées de cache expirant après 20 minutes (configurable). Après expiration, les relectures sont autorisées car Claude peut avoir compacté le contexte et perdu le contenu précédent.
La configuration se fait via des variables d'environnement :
READ_ONCE_TTL=1200- secondes avant l'expiration du cache (par défaut 20 min)READ_ONCE_DIFF=1- activer le mode diffREAD_ONCE_DIFF_MAX=40- lignes de diff maximum avant de revenir à une relecture complèteREAD_ONCE_DISABLED=1- désactiver complètement
Détails techniques
L'outil entier fait environ 250 lignes de bash sans dépendances au-delà de jq et diff. Il est sous licence MIT et s'installe en s'ajoutant à vos crochets .claude/settings.json.
Le développeur a créé cet outil car il exécute Claude Code dans une boucle autonome où les coûts en jetons s'accumulent rapidement. Le mode diff seul aurait réduit leur utilisation de jetons par session d'environ 30 %.
📖 Lire la source complète : r/ClaudeAI
👀 See Also

Agents Observe : Tableau de bord en temps réel pour la surveillance des équipes d'agents de code Claude
Agents Observe est un tableau de bord local qui fournit une observabilité en temps réel pour les sessions d'agents Claude Code en utilisant des hooks au lieu d'OTEL. Il capture chaque appel d'outil, la hiérarchie des agents et les événements avec des capacités de filtrage et de recherche, fonctionnant comme un conteneur Docker qui démarre automatiquement avec les sessions Claude.

Memento Vault : Outil Local pour un Contexte Persistant dans les Sessions Code Claude
Memento Vault est un ensemble de crochets qui capture automatiquement les transcriptions de session, les évalue et stocke des notes atomiques dans un dépôt git local. Il offre une récupération sans coût via une recherche BM25 + vectorielle avec une latence moyenne de 472 ms et injecte un contexte pertinent au début de la session, à chaque invite et lors de la lecture de fichiers.

PicoClaw échoue à construire un agent IA F1, brûle 20 dollars de crédits API
Un développeur a tenté de créer un bot d'informations F1 en utilisant PicoClaw sur un Raspberry Pi Zero 2W, mais l'outil est passé par défaut à la version 11, a généré du code Python halluciné et a consommé 20 $ de crédits d'API DeepSeek sans produire de solution fonctionnelle.

Kit de démarrage Next.js open source ajoute des garde-fous et des instructions d'agent pour prévenir le contenu IA générique
Un nouveau boilerplate Next.js inclut l'authentification, la base de données, l'IC, les tests et les instructions Claude Code prêts à l'emploi, destiné aux développeurs utilisant des agents de codage IA pour créer plus rapidement des applications de production.