Claude Code a plusieurs façons d'accéder à tes fichiers. Comprendre pourquoi il préfère son outil Read à une simple commande cat, et savoir exploiter la pagination et la lecture de binaires, change la qualité et la rapidité de ses réponses.
Read vs cat : ce que ça change vraiment
Quand tu demandes "lis ce fichier", Claude Code utilise son outil Read, pas cat. La différence n'est pas cosmétique.
| Critère | cat (Bash) | Outil Read |
|---|---|---|
| Numéros de ligne | Seulement avec cat -n | Toujours inclus automatiquement |
| Gros fichiers | Déverse tout d'un coup | Pagination native (offset + limit) |
| PDF / images | Contenu brut illisible | Rendu visuel ou texte extrait |
| Notebooks Jupyter | JSON brut incompréhensible | Cellules + outputs mis en forme |
| Chemins Windows | Parfois des conflits | Chemins absolus Windows et Unix gérés |
Lire un fichier simple
Lance Claude Code dans ton projet, puis demande-lui de lire n'importe quel fichier par son chemin.
Puis dans la session :
Pagination : lire une partie seulement
Sur un gros fichier (fichier de log, JSON généré, vendor bundle), cat déverse tout en une fois et sature la fenêtre de contexte de l'agent. Read gère ça nativement avec offset et limit.
Par défaut, Read retourne jusqu'à 2 000 lignes depuis le début du fichier. Si le fichier est plus long, il ajoute une notice PARTIAL view pour indiquer combien de contenu reste à lire et comment le paginer.
Claude va appeler Read avec offset: 5000 et limit: 100. Il obtient exactement ce bloc, sans bruit autour, sans saturer le contexte avec les 4 999 lignes précédentes.
Le même réflexe s'applique pour un JSON volumineux ou un fichier de config généré automatiquement : demande à Claude de lire la section qui t'intéresse plutôt que le fichier entier.
Lire un PDF
Read sait extraire le texte d'un PDF. Pour les PDFs courts (10 pages ou moins), un Read simple suffit. Pour les PDFs longs, il faut préciser un intervalle de pages avec le paramètre pages, sinon Claude Code retourne une erreur explicite.
La limite par requête est de 20 pages. Pour un PDF de 80 pages, tu peux demander à Claude de lire plusieurs tranches successives : "1-20", puis "21-40", etc.
Lire une image ou un screenshot
Read retourne les images (PNG, JPG et autres formats courants) sous forme de contenu visuel que Claude perçoit directement. Les bytes bruts ne transitent pas : Claude voit l'image.
Use case typique : tu as un bug visuel, tu fais un screenshot, tu pointes le fichier à Claude Code et tu lui demandes de diagnostiquer ou de produire le CSS qui corrigerait l'affichage.
Note : Claude Code redimensionne les grandes images avant envoi pour respecter les limites du modèle. Si tu as besoin qu'il analyse un détail pixel par pixel sur une image très grande, demande-lui d'abord de recadrer la zone avec ImageMagick via Bash.
Lire un notebook Jupyter
Pour les fichiers .ipynb, cat te déverse le JSON brut du notebook avec toutes les métadonnées imbriquées. Read les retourne mis en forme : cellules de code, cellules markdown, et leurs outputs (texte, erreurs, visualisations).
