Les modes de Claude Code

Claude Code propose trois modes d'interaction. Les maîtriser, c'est la différence entre tourner en rond pendant une heure et livrer une feature en 15 minutes.

Vue d'ensemble

ModeQuand l'utiliserCe que Claude fait
Chat Mode (par défaut)Questions, modifications simples, explorationAttend ta confirmation avant chaque modification
Plan ModeFeatures multi-fichiers, réflexion architecturaleAnalyse et propose un plan, sans toucher au code
Auto-acceptImplémentation d'un plan validéExécute sans demander confirmation à chaque étape

Tu bascules entre les trois avec Shift+Tab, qui cycle dans l'ordre : Normal, Plan, Auto-accept.

Chat Mode (par défaut)

Le mode standard. Tu poses une question ou demandes une modification, Claude propose le changement, et tu valides avant qu'il l'applique.

Quand l'utiliser :

  • Poser une question sur le code existant
  • Faire une modification simple (renommer une variable, corriger un bug évident)
  • Explorer une partie du codebase que tu ne connais pas

Exemples de prompts en Chat Mode

Le formulaire d'inscription à la waitlist ne reset pas après soumission.
Le state `email` reste affiché. Corrige le composant WaitlistForm.tsx.

La règle : si ta modification touche un seul fichier et que tu sais exactement ce que tu veux, le Chat Mode suffit.

Plan Mode

Le mode le plus important pour construire un MVP. Au lieu de coder directement, Claude analyse ton codebase, pose des questions, et propose un plan détaillé. Il ne touche à aucun fichier tant que tu n'as pas validé.

Activer Plan Mode

Raccourci

Shift+Tab      # Cycle entre les modes
               # Normal → Plan → Auto-accept → Normal

Tu peux aussi taper /plan directement dans le prompt.

Quand utiliser Plan Mode

  • Ta modification touche 2 fichiers ou plus
  • Tu dois prendre une décision architecturale (choix de pattern, structure de données)
  • Tu n'es pas sûr de l'approche et tu veux que Claude réfléchisse d'abord
  • La feature est complexe (intégration Stripe, flux d'authentification, système d'emails)

Quand Plan Mode est inutile

Ne perds pas de temps à planifier des modifications triviales. Si tu veux renommer une variable, corriger une typo, ou ajouter un champ à un schéma, utilise directement le Chat Mode. Plan Mode ajouterait de la friction sans valeur.

Auto-accept Mode

Une fois que tu as un plan validé, active l'auto-accept pour laisser Claude implémenter sans te demander confirmation à chaque fichier modifié.

Raccourci

Shift+Tab      # Continue de cycler pour atteindre Auto-accept
               # Normal → Plan → Auto-accept

Scénario complet : le dashboard de LaunchList

Voyons comment les trois modes s'enchaînent sur un cas réel. On veut construire le dashboard qui affiche les waitlists d'un utilisateur avec leurs statistiques (nombre d'inscrits, taux de conversion, revenus Stripe).

1

Plan Mode

On active Plan Mode avec Shift+Tab, puis on envoie le prompt.

Prompt envoyé en Plan Mode

Je veux créer le dashboard principal de LaunchList.

Ce dashboard doit afficher :
- La liste des waitlists de l'utilisateur connecté
- Pour chaque waitlist : nombre d'inscrits, taux de conversion, revenus Stripe
- Un bouton "Créer une waitlist" si l'utilisateur n'en a aucune
- Un état vide avec un message d'onboarding

Stack : Next.js 16 (App Router), Drizzle ORM, Better-Auth pour la session,
Stripe pour les paiements, Tailwind CSS v4.

Le schéma Drizzle existant a les tables : users, waitlists, waitlistEntries, orders.

Analyse le code existant et propose un plan détaillé.
2

Claude propose son plan

Claude explore le codebase et revient avec un plan structuré.

À ce stade, tu lis le plan. Tu vérifies que l'approche te convient. Tu poses des questions si nécessaire : "Pourquoi des Server Components plutôt qu'un fetch client-side ?" ou "Ajoute aussi un filtre par statut actif/archivé."

Quand le plan te convient, tu valides.

3

Auto-accept pour l'implémentation

Tu actives Auto-accept avec Shift+Tab (cycle jusqu'à Auto-accept) et tu laisses Claude implémenter. Il crée les fichiers, modifie le schéma, ajoute les requêtes. Tu le regardes travailler sans avoir à valider chaque fichier individuellement.

4

Review

L'auto-accept a fini. Tu reviens en Chat Mode (Shift+Tab pour cycler), tu lances un git diff et tu examines ce que Claude a produit.

Vérification

git diff --stat

En relisant le code, tu remarques un problème : Claude a bien prévu le composant d'onboarding quand l'utilisateur n'a aucune waitlist, mais la requête Drizzle ne filtre pas les waitlists supprimées. Si un utilisateur a supprimé toutes ses waitlists, il voit un dashboard vide sans message d'onboarding.

5

Itération

Tu restes en Chat Mode pour la correction, c'est un fix simple.

Prompt de correction

Dans src/lib/queries/dashboard.ts, la requête getWaitlistsByUser ne filtre
pas les waitlists avec status "deleted". Du coup si un utilisateur a supprimé
toutes ses waitlists, il voit un dashboard vide au lieu du message d'onboarding.

Corrige la requête pour exclure les waitlists supprimées, et vérifie que le
composant Dashboard utilise bien le bon état vide.

Ce cycle Plan, Auto-accept, Review, Correction est le workflow fondamental de Claude Code. Tu vas le répéter des dizaines de fois pendant la construction de ton MVP.

Les pièges de chaque mode

1

Auto-accept sans plan validé

Le réflexe
Le problème
La solution
2

Plan Mode pour une modification triviale

Le réflexe
Le problème
La solution
3

Ne pas interrompre quand Claude part dans la mauvaise direction

Le réflexe
Le problème
La solution

Savoir interrompre Claude

C'est un réflexe que tu dois développer dès maintenant. Quand Claude commence à générer du code et que tu vois dès les premières lignes qu'il part dans la mauvaise direction, n'attends pas qu'il finisse. Chaque ligne générée dans la mauvaise direction, c'est du contexte pollué et du temps perdu.

Appuie sur Escape immédiatement. Pas dans 30 secondes, pas après avoir lu la suite "pour voir". Tout de suite.

Après l'interruption, reformule ton prompt en étant plus précis sur ce que tu veux. Souvent, Claude partait dans la mauvaise direction parce que ton prompt était ambigu ou manquait de contexte.

Situations typiques où tu dois interrompre :

  • Claude crée un nouveau fichier alors que tu voulais modifier un fichier existant
  • Claude installe une dépendance que tu n'as pas demandée
  • Claude restructure du code qui fonctionnait déjà
  • Claude part sur une approche complètement différente de ce que tu avais en tête

Raccourcis essentiels

RaccourciAction
Shift+TabCycler entre les modes (Normal, Plan, Auto-accept)
EscapeInterrompre Claude
Escape x2Éditer le prompt précédent
/clearRéinitialiser le contexte
/planActiver Plan Mode directement

Le workflow recommandé

1

Plan Mode

Décrire la feature, lire et valider le plan proposé par Claude.

2

Auto-accept

Laisser Claude implémenter le plan validé.

3

Review (diff)

Lire les changements, repérer les problèmes.

4

Chat Mode

Corriger les problèmes trouvés.

5

Commit

Valider le travail.

Répète ce cycle pour chaque feature. Une feature = un cycle. Ne mélange pas plusieurs features dans le même cycle, tu perdras en clarté et Claude perdra le fil.

Checklist

Avant de passer à la page suivante, vérifie que tu sais :

  • Basculer entre Chat Mode et Plan Mode avec Shift+Tab
  • Activer et désactiver l'auto-accept
  • Interrompre Claude avec Escape quand il part dans la mauvaise direction

Prochaine étape

Les modes sont tes outils d'interaction avec Claude. Mais pour que Claude soit efficace dès le premier prompt, il a besoin de contexte sur ton projet. C'est le rôle du fichier CLAUDE.md, la mémoire persistante de ta collaboration avec Claude.