Comment fonctionne Claude Code
📚 Navigation de la série : L'article précédent 02 · Installation et Utilisation vous a montré comment installer et lancer Claude Code. Cet article soulève le capot pour voir clairement comment il travaille exactement : pourquoi il peut lire le code, modifier des fichiers, exécuter des commandes par lui-même, et pas seulement discuter.
La première fois que vous utilisez Claude Code, vous tomberez souvent sur ce genre de dialogue :
Vous : « Pourquoi ce test a-t-il échoué ? » Claude : « Je vais d'abord lancer la suite de tests pour voir. » (Il commence à exécuter la commande) Claude : « L'erreur indique que
validateEmaila retourné undefined, je vais regarder cette fonction. » (Il lit le fichier) Claude : « J'ai trouvé, il manque un return ici. Je vais le modifier, puis relancer le test pour confirmer. » (Il modifie, puis relance le test) Claude : « Le test est passé. »
En voyant cela, on peut être un peu confus : Vous n'avez posé qu'une seule question, comment a-t-il pu exécuter la commande, lire le fichier, modifier le code et vérifier le résultat tout seul ?
Pour faire simple, c'est la plus grande différence entre Claude Code et une boîte de dialogue IA ordinaire. Une boîte de dialogue ne fera que « vous répondre avec du texte », tandis que Claude Code agira par lui-même. Derrière cela se cache un mécanisme de travail fixe, que nous allons expliquer en détail aujourd'hui.
Après avoir lu cet article, vous obtiendrez :
- Une image pour comprendre la « boucle d'agent » de Claude Code : les trois actions qu'il répète pour chaque tâche
- Une compréhension claire de ce que les 5 catégories d'« outils » à sa disposition peuvent faire, et comment il décide lequel utiliser
- Savoir exactement ce qu'il peut et ne peut pas voir sur votre ordinateur (ce qui concerne la sécurité)
- Une petite expérience à reproduire pour le voir effectuer une boucle complète de vos propres yeux
01 Boucle d'Agent : Réfléchir → Agir → Observer
Donnons d'abord la conclusion : Quel que soit le travail effectué par Claude Code, il répète trois actions : recueillir le contexte, agir, vérifier les résultats. L'équipe officielle appelle ce mécanisme la « boucle d'agent (agentic loop) ».
En termes plus simples : Réfléchir → Agir → Observer.
- Réfléchir (recueillir le contexte) : Comprendre d'abord la situation (lire les fichiers pertinents, regarder les erreurs, vérifier le statut git)
- Agir (prendre des mesures) : Passer à l'action (modifier le code, exécuter des commandes, créer de nouveaux fichiers)
- Observer (vérifier les résultats) : Vérifier si ce qui vient d'être fait est correct (exécuter des tests, regarder la sortie), si ce n'est pas le cas, refaire un tour
Analogie : Un mécanicien fiable. Vous amenez votre voiture au garage et dites « le volant tremble », le mécanicien ne va pas la démonter immédiatement. Il va d'abord faire le tour et faire un essai (Réfléchir), puis utiliser la clé à molette (Agir), et après la réparation conduire un peu pour confirmer que ça ne tremble plus (Observer). Si ça tremble encore, il retourne à la première étape. Claude Code est comme ce mécanicien, sauf qu'il répare votre code.
Revenons au dialogue du début, vous comprendrez en comparant :
| Ce que dit Claude | À quelle étape de la boucle cela correspond |
|---|---|
| « Je vais d'abord lancer la suite de tests » | Réfléchir (recueillir le contexte) |
| « L'erreur indique undefined, je vais regarder cette fonction » | Réfléchir (continuer à recueillir) |
| « Il manque un return ici, je vais le modifier » | Agir (prendre des mesures) |
| « puis relancer le test pour confirmer » | Observer (vérifier les résultats) |
| « Le test est passé » | Fin de la boucle |
Il enchaîne ces trois étapes, le résultat d'une étape déterminant ce qu'il fera à la suivante. Réparer un bug peut nécessiter plusieurs boucles, demander « que signifie ce code » peut ne nécessiter que l'étape « Réfléchir ». Le nombre de boucles est déterminé par la complexité de la tâche, il n'est pas codé en dur.

L'image ci-dessus illustre la boucle que Claude Code effectue chaque fois qu'il travaille : de « Réfléchir » à « Agir » à « Observer », s'il n'est pas satisfait, il retourne de « Observer » à « Réfléchir » pour un nouveau tour - vous pouvez l'arrêter à tout moment en appuyant sur Esc.
Il y a un point clé ici que beaucoup de gens ne réalisent pas : Vous faites également partie de cette boucle. S'il s'écarte du droit chemin, vous pouvez intervenir à tout moment pour le corriger - nous en parlerons en détail dans la section suivante.
Ce qui motive cette boucle, ce sont deux choses : Le modèle est responsable de "Réfléchir", les outils sont responsables de "Agir" et "Observer".
Le modèle est le cerveau de Claude - Sonnet suffit pour la programmation quotidienne, Opus a un meilleur raisonnement et convient aux architectures complexes. Vous pouvez changer à tout moment avec /model dans la session, ou au démarrage avec claude --model sonnet.
💡 En un mot : Claude Code ne se contente pas de « vous répondre avec un texte », il boucle sur « Réfléchir → Agir → Observer » jusqu'à ce que le travail soit terminé, c'est la différence fondamentale avec une boîte de dialogue.
02 Vous êtes aussi dans la boucle : Interruption à tout moment
Comme mentionné à la fin de la section précédente : vous faites également partie de cette boucle. Développons. Une conversation IA ordinaire, c'est « vous posez une question, il répond par un paragraphe, fin du tour ». Claude Code est différent : lorsqu'il tourne dans sa boucle de lui-même, vous n'avez pas besoin d'attendre passivement, vous pouvez intervenir à tout moment.
Par exemple, demandez-lui de refactoriser un module, s'il s'égare et s'apprête à modifier un tas de fichiers, appuyez directement sur Esc, il s'arrêtera immédiatement et annulera la commande en cours. Ajoutez « ne touche pas à ce fichier, modifie seulement cette fonction », et il continuera avec la nouvelle instruction.
Il y a deux façons d'interrompre, il faut bien distinguer :
| Opération | Effet | Quand l'utiliser |
|---|---|---|
Appuyer sur Esc | Arrêt immédiat, l'appel d'outil en cours est annulé, il attend votre prochaine instruction | S'il s'est égaré, s'il fait quelque chose de mal, arrêtez-le vite |
Taper du texte + Enter | N'interrompt pas l'opération en cours, envoie un supplément, il le lira une fois qu'il aura fini ce qu'il fait | Juste pour ajouter du contexte ou un rappel, pas besoin de l'arrêter d'urgence |
Vous n'avez pas besoin de retenir un « prompt parfait ». Donnez-lui une direction générale, regardez-le faire, et corrigez-le s'il se trompe - C'est une conversation, pas une commande unique.
Cette citation est issue de la documentation officielle, et elle vaut la peine d'être retenue. Au début, on veut toujours « tout dire en une phrase » et on s'efforce de trouver la bonne formulation. En fait, ce n'est pas nécessaire : donnez une direction générale, arrêtez-le s'il se trompe, l'itération est beaucoup plus rapide que de préparer un coup de maître.
💡 En un mot : Il travaille de manière autonome, mais obéit toujours à vos ordres -
Escpour un arrêt d'urgence, taper pour compléter, vous gardez la main sur le volant à tout moment.
03 Outils : La raison pour laquelle il peut vraiment agir
La section précédente disait que le modèle est responsable de « Réfléchir ». Qu'en est-il de « Agir » et « Observer » ? Les outils.
C'est la phrase la plus importante à retenir à propos de Claude Code : Sans outils, Claude ne peut que vous répondre avec du texte ; avec des outils, il peut vraiment lire votre code, modifier vos fichiers et exécuter vos commandes.
Analogie : Un assistant portant un bracelet intelligent. Un assistant qui ne fait que parler ne peut que donner des idées ; si on lui fournit un équipement pour ouvrir les portes, taper, chercher des informations, il peut vraiment faire les choses pour vous. Les outils sont les « mains » de Claude Code.
L'équipe officielle divise les outils intégrés en 5 grandes catégories. Je vais vous les lister en termes simples :
| Catégorie d'outil | Ce qu'il peut faire | À quelle opération habituelle cela correspond |
|---|---|---|
| Opérations sur les fichiers | Lire des fichiers, modifier le code, créer de nouveaux fichiers, renommer, réorganiser | Vous ouvrez l'éditeur, tapez, enregistrez |
| Recherche | Trouver des fichiers par nom, chercher dans le contenu avec des expressions régulières, parcourir toute la base de code | Vous appuyez sur Ctrl+F ou utilisez grep |
| Exécution | Exécuter des commandes shell, lancer un serveur, exécuter des tests, utiliser git | Vous tapez des commandes dans le terminal et appuyez sur Entrée |
| Réseau | Chercher sur le web, récupérer de la documentation, chercher des messages d'erreur | Vous ouvrez un navigateur pour chercher une erreur |
| Intelligence du code | Voir les erreurs de type et les avertissements, aller à la définition, trouver les références | « Aller à la définition », « Trouver les références » dans l'IDE |
⚠️ Attention : La catégorie 5 « Intelligence du code » nécessite l'installation supplémentaire d'un plugin d'intelligence du code, les 4 premières catégories sont prêtes à l'emploi. Référez-vous à la documentation officielle.
Alors comment décide-t-il quel outil utiliser ? Ce n'est pas vous qui le spécifiez, c'est le modèle lui-même qui choisit en fonction de vos mots et de la progression actuelle.
Prenons un exemple officiel, vous dites « corrige le test qui échoue », voici comment il procédera probablement en interne :
- Lancer la suite de tests, voir ce qui a échoué —— Il utilise Exécution
- Lire la sortie de l'erreur —— Exécution
- Chercher les fichiers sources pertinents —— Recherche
- Lire ces fichiers pour comprendre la logique —— Opérations sur les fichiers
- Modifier le fichier pour corriger le bug —— Opérations sur les fichiers
- Relancer le test pour vérifier —— Exécution
Vous voyez ? Ces 6 étapes sont le déroulement de la boucle « Réfléchir → Agir → Observer » au niveau des outils. À chaque fois qu'il utilise un outil, il récupère de nouvelles informations, les donne au modèle pour décider de la prochaine étape - c'est ainsi que la boucle tourne.
Il y a un scénario très typique : lui demander de « faire le tri dans la structure des répertoires » d'un vieux projet sans documentation. Il n'a pas besoin que vous lui fournissiez des fichiers, il fait lui-même ls, grep sur des mots-clés, lit sept ou huit fichiers, et finit par dessiner un diagramme de structure. Tout cela sans que vous ne spécifiez un seul fichier - c'est ce que l'équipe officielle appelle « déléguer, ne pas instruire » : donnez la direction, il s'occupe des détails.
Quant aux Skills, MCP, Hooks, Subagents - ce sont des couches d'extension au-dessus de ces 5 catégories d'outils intégrés, qui permettent à Claude d'en savoir plus et de se connecter à plus de services externes. Nous en parlerons dans les articles suivants, il suffit de savoir que cela existe pour l'instant.
💡 En un mot : Les outils sont les « mains » de Claude Code, 5 catégories s'occupent de tout ; lequel utiliser, combien de fois l'utiliser, il décide lui-même, vous n'avez qu'à lui donner l'objectif.
04 Ce qu'il peut voir sur votre ordinateur
Cette section concerne la sécurité et doit être claire. Beaucoup de gens hésitent lors de la première utilisation : A-t-il fouillé dans tout mon disque dur pour l'envoyer ailleurs ? Non.
Retenez d'abord ceci : Le « champ de vision » de Claude Code équivaut essentiellement à ce que vous pouvez atteindre depuis le terminal dans ce répertoire. L'endroit où vous tapez claude est le centre de son périmètre d'action.
Selon la documentation officielle, lorsque vous exécutez claude dans un répertoire, il peut accéder à :
- Votre projet : Les fichiers du répertoire courant et de ses sous-répertoires (il ne touchera pas aux fichiers situés ailleurs sans votre permission)
- Votre terminal : Toute commande que vous pouvez exécuter - outils de build, git, gestionnaire de paquets, scripts. Ce que la ligne de commande peut faire, il peut le faire
- Votre statut git : Branche actuelle, modifications non validées, historique des commits récents
- Votre
CLAUDE.md: Le manuel spécifique de votre projet, qu'il lira à chaque session (nous parlerons de ce fichier plus tard) - Vos extensions configurées : MCP, Skills, Subagents, etc.
C'est précisément parce qu'il peut voir tout le projet, et pas seulement le fichier actuellement ouvert, qu'il peut se coordonner sur plusieurs fichiers : dites-lui de « corriger le bug de connexion », il trouvera plusieurs fichiers pertinents, les modifiera tous ensemble, puis lancera le test pour vérifier. Cela n'a rien à voir avec un plugin de complétion en ligne qui ne voit que le fichier actuel.
Alors comment est garantie la sécurité ? Il y a deux barrières :
Première barrière : Le point de contrôle (checkpoint), l'équivalent d'une sauvegarde de jeu. Avant de modifier un fichier, il prendra une capture du contenu actuel. S'il casse quelque chose, appuyez deux fois sur Esc (ou tapez /rewind) alors que la zone de saisie est vide, un « menu de retour en arrière » apparaîtra, choisissez « restaurer le code » pour ramener le fichier à son état avant la modification ; vous pouvez aussi lui dire directement d'« annuler la modification précédente ».
Les points de contrôle ne s'appliquent qu'aux fichiers modifiés par les outils d'édition de Claude - les modifications effectuées par des commandes bash, ainsi que les effets secondaires externes, ne sont pas inclus. La base de données, les API, le déploiement en ligne et autres actions « irréversibles » ne peuvent pas être sauvegardés - donc Claude vous demandera la permission avant d'exécuter de telles commandes ayant un impact externe.
Il y a un piège courant ici : parfois il modifie cinq ou six fichiers, et vous vous rendez compte que la direction est complètement fausse. Avant, il fallait faire git checkout manuellement pour chaque fichier ; maintenant, appuyez deux fois sur Esc, choisissez « restaurer le code » dans le menu qui apparaît - les cinq fichiers reviendront instantanément à leur état précédent, c'est propre et net. Avec cette astuce, on a beaucoup moins peur de le laisser modifier le code.
Deuxième barrière : Le mode d'autorisation, qui équivaut à un stagiaire vous demandant avant d'agir. Appuyez sur Shift+Tab pour faire défiler les modes :
| Mode d'autorisation | Comportement de Claude |
|---|---|
| Défaut | Vous demande avant de modifier des fichiers ou d'exécuter des commandes |
| Accepter automatiquement les modifications (Auto-accept edits) | Ne vous demande pas pour les fichiers et commandes courantes (mkdir, mv), vous demande pour les autres |
| Plan Mode (Mode plan) | Peut lire les fichiers et exécuter des commandes d'exploration, mais ne modifie pas le code source ; vous propose un plan d'abord, n'agit qu'après votre approbation |
| Mode automatique (Auto mode) | Évalue toutes les actions avec des contrôles de sécurité en arrière-plan (expérimental, actuellement en aperçu de recherche, sujet à changement) |
L'habitude la plus utile à prendre est d'utiliser le Plan Mode : pour les tâches complexes, appuyez deux fois sur Shift+Tab pour y entrer, dites-lui de « seulement analyser, proposer une solution, ne pas agir ». Parcourez la solution, ajustez-la, et une fois confirmée, laissez-le l'exécuter. Cela vous évitera plusieurs retours en arrière dus à une « mauvaise direction à mi-chemin » : regarder les plans avant de construire est beaucoup plus facile que de modifier en cours de route.
Si ça vous ennuie qu'il vous demande tout le temps, vous pouvez ajouter à la liste blanche les commandes de confiance (comme npm test, git status) dans le fichier .claude/settings.json du projet. Les détails de la configuration seront expliqués dans un article dédié.
💡 En un mot : Son champ de vision ≈ vos permissions de terminal dans ce répertoire ; les points de contrôle servent à « annuler si c'est cassé », le mode d'autorisation sert à « demander avant d'agir » - avec ces deux barrières, vous pouvez l'utiliser en toute tranquillité.
05 Pratique : Le voir accomplir une boucle complète de vos propres yeux
La théorie ne suffit pas, faisons une petite expérience pour le voir effectuer la boucle « Réfléchir → Agir → Observer ». Cette expérience ne nécessite aucun projet existant, vous pouvez la faire dans un nouveau dossier vide.
Première étape : Créez un répertoire vide, entrez-y et lancez Claude Code.
Dans le terminal (Mac / Linux ; sous Windows avec PowerShell, remplacez mkdir -p par mkdir) :
mkdir -p ~/cc-demo && cd ~/cc-demo
claudeDeuxième étape : Une fois dedans, passez d'abord en Mode plan pour voir comment il « réfléchit ».
Appuyez deux fois sur Shift+Tab, une invite en bas de l'interface indiquera que vous êtes entré en Plan Mode (Mode plan). Puis lancez-lui cette phrase :
Écris-moi un script Python add.py avec une fonction add(a, b) qui retourne la somme de deux nombres,
puis écris quelques cas de test pour la vérifier, et enfin lance le test.
Donne-moi le plan d'abord, n'agis pas directement.Ce que vous devriez voir : Il ne créera pas le fichier immédiatement, mais vous répondra avec un plan, quelque chose comme :
Plan :
1. Créer add.py, implémenter add(a, b)
2. Créer des tests (avec assert ou pytest)
3. Lancer les tests, confirmer qu'ils passent tous
Voulez-vous que je commence ?C'est l'étape « Réfléchir » : il a clarifié sa réflexion avant d'agir. Notez qu'il s'est arrêté pour attendre votre approbation, c'est la caractéristique du Mode plan.
Troisième étape : Approuvez, regardez-le « Agir » + « Observer ».
Répondez « C'est bon, commence ». Ensuite, vous le verrez faire séquentiellement :
- Créer des fichiers (outil d'opérations sur les fichiers) - il peut demander confirmation des permissions, vous acceptez
- Une fois écrit, lancer les tests (outil d'exécution), par exemple exécuter
python add.pyoupytest - Vous donner la sortie du test, l'attendu est similaire à :
Tests passés : add(2, 3) == 5 ✓ add(-1, 1) == 0 ✓ add(0, 0) == 0 ✓Là, vous avez vu une boucle complète : Réfléchir (planifier) → Agir (créer un fichier, écrire le code) → Observer (exécuter le test, rapporter le résultat).
Quatrième étape (facultatif) : Créer intentionnellement une « nouvelle boucle ».
Dites-lui : « Change l'addition en soustraction, mais garde le même nom de fonction, puis relance le test. »
Vous le verrez modifier le code, puis relancer le test - si les assertions de test sont toujours des additions, le test échouera, il découvrira lui-même l'échec, reviendra en arrière et corrigera. C'est l'essence même de la boucle : s'il voit que c'est faux, il recommence automatiquement un tour.
Tous les débutants devraient faire cette expérience une fois. Plutôt que de lire dix fois les mots « boucle d'agent », le voir de ses propres yeux s'arrêter pour proposer un plan, puis agir, puis vérifier, permet de comprendre beaucoup plus vite.
💡 En un mot : En faisant cette petite expérience, vous verrez de vos propres yeux la boucle « Réfléchir → Agir → Observer » - en particulier la façon dont il découvre ses erreurs et relance une boucle de lui-même.
06 Résumé
Cet article a clarifié une chose : Comment Claude Code peut-il travailler tout seul.
Récapitulons l'essentiel :
| Point clé | À retenir en une phrase |
|---|---|
| Boucle d'agent | Réfléchir → Agir → Observer, tourne en boucle jusqu'à ce que ce soit fini ; c'est la différence fondamentale avec une boîte de dialogue |
| Modèle + Outils | Le modèle réfléchit, les outils agissent et observent |
| 5 catégories d'outils | Fichiers / Recherche / Exécution / Réseau / Intelligence du code, il choisit lui-même lesquels utiliser |
| Ce qu'il peut voir | ≈ Vos permissions de terminal dans ce répertoire, il peut se coordonner sur plusieurs fichiers |
| Deux barrières de sécurité | Point de contrôle (annuler en cas d'erreur) + Mode d'autorisation (demander avant d'agir) |
Vous devriez maintenant être en mesure de comprendre ce qui se passe à l'écran lorsque Claude Code exécute une tâche : chaque fois qu'il lit un fichier, chaque fois qu'il exécute une commande, c'est une étape de la boucle ; vous savez aussi comment utiliser Esc pour un arrêt d'urgence, utiliser le Mode plan pour voir la solution d'abord, et vous fier aux points de contrôle pour le laisser modifier le code sans crainte.
En comprenant ce mécanisme, votre état d'esprit lors de l'utilisation sera complètement différent : ce n'est pas un puits à souhaits, mais un partenaire qui réfléchit, agit et vérifie par lui-même - votre travail consiste à donner la direction, à définir les critères de recette, et à l'aider s'il s'égare.
Article suivant 04 · Configuration API : Claude Code est installé et vous comprenez son fonctionnement, mais il doit se connecter à un modèle pour vraiment travailler. Le prochain article vous montrera comment configurer l'API - une fois cette étape franchie, la boucle et les outils que vous avez appris précédemment pourront être mis en action.