Skip to Content

Chapitre 1.3 — Anatomie d’une session

⏱️ TL;DR — Une session, c’est une fenêtre de contexte que l’agent remplit au fur et à mesure : instructions du harness, ton CLAUDE.md, ta demande, les fichiers lus, les sorties de commandes, son raisonnement. Cette fenêtre est finie et périssable. Comprendre ce qui la remplit — et ce qui la pollue — est la compétence qui sépare une session nette d’une session qui « part en vrille ». On voit aussi le système de permissions (ce que l’agent a le droit de faire) et le plan mode (réfléchir avant d’agir).

🎯 Objectifs

  • Lister ce qui compose le contexte d’une session et dans quel ordre de priorité.
  • Identifier ce qui remplit et ce qui pollue le contexte.
  • Comprendre les modes de permission et pourquoi ils existent.
  • Savoir ce qu’est le plan mode et quand l’utiliser.

Ce qu’il y a dans le contexte

Quand l’agent « réfléchit », il ne voit pas ton disque dur : il voit une pile de texte, sa fenêtre de contexte. En gros, dans l’ordre :

Points clés :

  1. Les instructions du harness et ton CLAUDE.md sont là dès le départ, en permanence. C’est pour ça que le CLAUDE.md est si puissant : il est toujours présent (à la différence d’une skill, chargée à la demande — voir 1.4).
  2. Ta demande oriente la boucle.
  3. Tout ce que l’agent lit et exécute s’accumule. Lire un fichier de 800 lignes, c’est 800 lignes dans le contexte. Lancer une commande verbeuse, c’est sa sortie entière dans le contexte.

⚠️ Piège — Le contexte se remplit silencieusement. Une commande npm run build qui crache 500 lignes de logs, un gros fichier lu « pour voir », un long copier-coller : tout ça s’entasse. Au bout d’un moment, l’agent « oublie » le début (le plus vieux se fait résumer/évincer) et sa qualité baisse. Un contexte propre = un agent net.

Contexte : le nourrir vs le polluer

Nourrit (utile)Pollue (à éviter)
Lire les 2-3 fichiers pertinentsLire tout un dossier « au cas où »
Une sortie de test ciblée500 lignes de logs de build bruts
Un plan clair validéDix allers-retours d’hésitation
Le CLAUDE.md concisUn CLAUDE.md fourre-tout de 600 lignes
Un diff précisColler le contenu d’un fichier qu’il peut lire

La bonne nouvelle : quand une session se charge trop, Claude Code compacte automatiquement (il résume le passé pour continuer). Et tu peux reprendre la main avec /clear (repartir propre) ou en isolant une sous-tâche dans un subagent (qui a son propre contexte — Partie 8). On outillera tout ça en Partie 5.

💡 Réflexe d’architecte — Traite le contexte comme un budget d’attention. Avant de lancer une commande très verbeuse ou de faire lire un énorme fichier, demande-toi : ai-je besoin de tout ça, ou d’un extrait ? Un agent avec un contexte ciblé raisonne mieux qu’un agent noyé.

Les permissions : ce que l’agent a le droit de faire

L’agent peut exécuter des commandes et modifier des fichiers — donc la question « qu’est-ce qu’il a le droit de faire sans me demander ? » est centrale. Claude Code encadre ça par des modes de permission :

  • Demander (par défaut) : l’agent demande confirmation avant les actions sensibles (exécuter une commande, écrire un fichier selon la config).
  • Accepter les éditions : il applique ses modifications de fichiers sans confirmation à chaque fois, mais reste prudent sur le reste.
  • Plan : il ne modifie rien, il conçoit un plan (voir plus bas).
  • Autonomie élargie : moins d’interruptions, à réserver aux contextes où tu fais confiance et où le risque est faible.

Tu affines aussi via des règles de permission (autoriser tel type de commande, refuser tel autre) dans settings.json — on y reviendra (P7, P10, Annexes). L’idée à retenir maintenant : plus tu es en confiance et outillé (hooks, tests, git), plus tu peux élargir l’autonomie sans risque.

⚠️ Piège — Tout autoriser dès le premier jour « pour ne pas être dérangé ». Mauvais calcul : sans garde-fous (tests, hooks, commits fréquents), une autonomie large sur un projet fragile = des dégâts silencieux. L’autonomie se gagne en installant le filet de sécurité d’abord (Parties 7 et 11).

Le plan mode : réfléchir avant d’agir

Le plan mode est un mode où l’agent conçoit un plan sans rien modifier, te le présente, et n’exécute qu’après ta validation. C’est l’outil anti-« il a foncé dans la mauvaise direction ».

Tu l’utilises quand :

  • la tâche est ambiguë ou a plusieurs approches possibles ;
  • elle touche à beaucoup de fichiers ou à de l’architecture ;
  • tu veux cadrer avant de laisser l’agent écrire (le cœur de la Partie 2).

🧭 Sur TaskFlow — On ouvrira TaskFlow en plan mode : avant d’écrire la moindre ligne, l’agent proposera une structure (routes, modèle de données, découpage des composants). On la corrigera à ce moment-là — c’est mille fois moins cher que de corriger 30 fichiers déjà écrits.

✏️ Exercices

Exercice 1 — Repère la pollution. Pendant une session réelle, après quelques échanges, demande à l’agent : « Résume ce que tu as en contexte actuellement et ce qui te semble superflu. » Observe ce qui s’est accumulé.

✅ Solution

Tu découvriras souvent des sorties de commandes verbeuses, un ou deux gros fichiers lus tôt et devenus inutiles, des allers-retours d’hésitation. C’est le moment idéal pour /clear et repartir avec un prompt net qui ne garde que l’essentiel — ou pour déléguer la suite à un subagent au contexte frais.

Exercice 2 — Plan d’abord. Prends une tâche moyenne (« ajoute l’export CSV des tâches ») et lance-la en plan mode. Lis le plan : y a-t-il une décision que tu n’aurais pas prise ? Corrige-la avant l’exécution.

✅ Solution

Le plan révèle souvent une hypothèse implicite (où placer le endpoint, quel format de date, gérer ou non les gros volumes). Corriger une ligne du plan coûte une phrase ; corriger l’implémentation coûte plusieurs fichiers. C’est tout l’intérêt : déplacer la correction en amont.

🧠 Quiz de révision

1. Pourquoi le CLAUDE.md est-il plus « toujours présent » qu’une skill ?

Parce que le CLAUDE.md est injecté dans le contexte dès le démarrage et y reste toute la session, tandis qu’une skill n’est chargée qu’à la demande, quand elle est pertinente. D’où : conventions universelles → CLAUDE.md ; capacité ponctuelle → skill.

2. Cite deux choses qui « polluent » le contexte.

Par exemple : les sorties de commandes très verbeuses (logs de build bruts) et la lecture de gros fichiers/dossiers entiers « au cas où ». Aussi : de longs copier-collers de code que l’agent pourrait lire lui-même.

3. Que se passe-t-il quand le contexte devient trop plein ?

Claude Code compacte (résume le passé pour continuer) ; les éléments les plus anciens perdent en détail. La qualité peut baisser si le contexte est saturé de bruit — d’où l’intérêt de /clear ou de déléguer à un subagent.

4. Quand élargir l’autonomie de l’agent est-il raisonnable ?

Quand le filet de sécurité est en place : tests, hooks de vérification, commits fréquents, git propre. L’autonomie se gagne en installant les garde-fous d’abord, pas en désactivant les confirmations sur un projet fragile.

5. Dans quels cas ouvrir en plan mode ?

Tâche ambiguë, plusieurs approches, beaucoup de fichiers, ou décision d’architecture. Bref : dès que l’enjeu est élevé, on planifie et on valide avant de laisser l’agent modifier le code.


Chapitre suivant : La carte des briques — CLAUDE.md, skills, subagents, hooks, MCP, plugins : qui fait quoi, et quand.