Cette note documente les catégories d’opérations que Claude Code effectue et les outils qu’il utilise. Claude Code exécute les mêmes types de commandes qu’un développeur exécuterait manuellement — simplement plus vite et de manière plus systématique. Connaître ces patterns rend la sortie de Claude Code lisible avec compréhension plutôt qu’avec une confiance aveugle.
Découverte de Fichiers
Plutôt que d’exécuter des commandes find ou ls brutes, Claude Code utilise des outils intégrés optimisés pour la vitesse et la sécurité. Lors de la recherche de fichiers, il utilise des patterns glob :
**/*.js Tous les fichiers JavaScript récursivementsrc/**/*.ts Fichiers TypeScript dans src/*.{json,yaml} Fichiers JSON et YAML dans le répertoire couranttest/**/*test.js Fichiers de test correspondant au patternLes patterns glob sont une façon concise de décrire des ensembles de fichiers. ** signifie « n’importe quel nombre de répertoires en profondeur ». * signifie « n’importe quels caractères ». Combinés, **/*.sql trouve chaque fichier SQL dans l’arborescence entière du projet.
Pour les listes de répertoires, les outils internes de Claude Code fournissent une sortie structurée avec des métadonnées. Vous pouvez occasionnellement voir ls ou ls -la standard quand Claude a besoin d’un aperçu rapide, mais la plupart de la découverte de fichiers se fait via l’outil glob intégré.
Recherche de Contenu
Les capacités de recherche de Claude Code sont alimentées par ripgrep (rg), un outil de recherche moderne dramatiquement plus rapide que grep traditionnel sur de grandes bases de code. Quand vous demandez à Claude de trouver quelque chose, il pourrait exécuter :
rg "function authenticate" --type js # Chercher dans les fichiers JavaScriptrg "TODO" -c # Compter les occurrencesrg "error" -i -C 2 # Insensible à la casse avec lignes de contexterg "import.*React" --glob "*.tsx" # Trouver les imports React dans les fichiers TSXLes flags ripgrep clés que Claude Code utilise :
| Flag | Rôle |
|---|---|
--type | Filtrer par type de fichier (js, py, rust, etc.) |
-i | Recherche insensible à la casse |
-C N | Afficher N lignes de contexte autour de chaque correspondance |
-c | Compter les correspondances plutôt que les afficher |
--glob | Filtrer par pattern de fichier |
-n | Afficher les numéros de ligne |
Si vous connaissez grep, ripgrep est la même idée avec de meilleures performances et des valeurs par défaut plus intelligentes (il respecte .gitignore automatiquement, par exemple). La syntaxe est suffisamment similaire pour que la connaissance de grep se transfère directement.
Lecture et Modification de Fichiers
Pour lire des fichiers, Claude Code utilise son outil Read intégré plutôt que cat. Cela fournit des numéros de ligne et gère des fichiers spéciaux comme les images, les PDFs et les notebooks Jupyter. L’outil Read peut également lire des sections spécifiques de grands fichiers plutôt que de tout charger en mémoire.
Pour les modifications, Claude Code utilise un outil Edit qui effectue des changements chirurgicaux plutôt que de réécrire des fichiers entiers :
{ "file_path": "/path/to/file.ts", "old_string": "oldFunctionName", "new_string": "newFunctionName", "replace_all": true}Cette approche présente deux avantages par rapport aux commandes sed ou awk que vous pourriez utiliser manuellement. Premièrement, c’est précis — cela remplace exactement le texte spécifié, sans risque de correspondances non intentionnelles. Deuxièmement, cela produit des diffs propres — le changement est visible et révisable, pas enfoui dans une expression sed complexe.
Quand Claude Code doit créer un nouveau fichier entièrement, il utilise un outil Write qui crée le fichier avec le contenu spécifié. Edit et Write nécessitent tous deux votre approbation avant de s’exécuter.
Commandes Git
Git est là où vous verrez le plus de véritables commandes bash dans la sortie de Claude Code. Ce sont des opérations git standard que vous exécuteriez vous-même :
# Vérifier l'état (souvent exécuté en parallèle)git status # Qu'est-ce qui a changé?git diff # Changements non stagésgit diff --staged # Changements stagésgit log --oneline -10 # Commits récents
# Effectuer des changementsgit add . # Stager tous les changementsgit commit -m "message" # Commiter avec un messagegit branch --show-current # Nom de la branche courante
# Travailler avec les remotesgit push origin maingit pull origin mainAvant de commiter, Claude Code exécute typiquement git status, git diff et git log en parallèle pour comprendre l’état complet avant de faire des changements.
Gestionnaires de Paquets et Outils de Build
Les workflows de développement impliquent des commandes fréquentes de gestionnaires de paquets. Claude Code les exécute lors de l’installation des dépendances, de la construction des projets ou de l’exécution des tests :
# Node.js/npmnpm install # Installer les dépendancesnpm run build # Construire le projetnpm run dev # Démarrer le serveur de développementnpm test # Exécuter les tests
# Python/pippip install -r requirements.txtpytest # Exécuter les tests
# Autres écosystèmescargo build # Rustgo build # Goyarn install # YarnCes commandes sont spécifiques à l’écosystème — vous verrez celles qui correspondent à la stack technologique de votre projet. Claude Code détecte le type de projet à partir des fichiers de configuration (package.json pour Node, requirements.txt pour Python, Cargo.toml pour Rust) et utilise les outils appropriés.
Commandes Système et de Processus
Claude Code vérifie occasionnellement l’état du système pour comprendre l’environnement :
which python # Trouver où Python est installéenv # Lister les variables d'environnementps # Vérifier les processus en coursfile document.pdf # Déterminer le type de fichierwc -l bigfile.txt # Compter les lignesCe sont des commandes de diagnostic — Claude Code les utilise pour répondre à des questions sur l’environnement de développement, vérifier que les dépendances sont installées, ou recueillir des informations nécessaires pour résoudre un problème.
Le Pattern : Lire, Planifier, Exécuter, Vérifier
Dans toutes ces catégories, Claude Code suit un pattern cohérent :
- Lire — recueillir des informations sur l’état actuel (contenu des fichiers, statut git, structure des répertoires)
- Planifier — déterminer quels changements sont nécessaires en fonction de votre requête
- Exécuter — effectuer les changements (modifications de fichiers, opérations git, exécution de commandes)
- Vérifier — confirmer que les changements ont fonctionné (compiler, exécuter les tests, vérifier la sortie)
C’est le même workflow qu’un développeur attentif suit. La valeur de Claude Code n’est pas qu’il fait quelque chose de différent — c’est qu’il fait la même chose plus vite et plus systématiquement, sans oublier d’étapes ni se laisser distraire.
Les commandes que Claude Code exécute sont les mêmes commandes qu’un développeur utilise manuellement, appliquées de manière systématique.