Lab 3.5 : Workflows Multi-Claude
Module : 3.5 - Workflows Multi-Claude | ← SlidesDurée : 30 minutes Projet Exemple : hackathon-starter
Objectifs d'Apprentissage
À la fin de ce lab, vous serez capable de :
- Utiliser le Plan Mode pour explorer une codebase legacy sans consommer le contexte d'implémentation
- Transmettre les résultats d'exploration (SUMMARY.md) à une session Builder fraîche
- Exécuter des sessions parallèles avec
claude -wpour des tâches indépendantes - Choisir le bon pattern multi-session selon les caractéristiques de la tâche
Prérequis
- Avoir complété les labs précédents du Jour 3
- Connaître
/rename,--resume,--continue(vus dans le Module 3.0) - Être capable d'ouvrir plusieurs fenêtres de terminal
- Être familier avec le projet hackathon-starter
Pourquoi Multi-Session ?
La vraie raison n'est pas d'avoir "plusieurs perspectives" — c'est de contrôler le contexte.
Le contexte se dégrade à mesure qu'il se remplit. Will Ness l'a mesuré empiriquement :
- 0-40% plein : raisonnement de haute qualité
- 40-70% plein : qualité moyenne
- 70%+ plein : qualité nettement dégradée
Explorer une codebase legacy consomme le contexte très vite. Tracer un flux d'authentification à travers six fichiers peut remplir la moitié de votre fenêtre de contexte avant même d'avoir écrit une ligne. Des sessions séparées donnent à chaque rôle un contexte propre.
Soyons honnêtes sur quand vous en avez vraiment besoin :
| Situation | Recommandation |
|---|---|
| Correction rapide, emplacement connu | Une seule session suffit |
| Périmètre clair + bons tests | Build + "review your work" dans la même session |
| Exploration longue (50+ lectures de fichiers) | Explore → Plan → Build |
| Tâches parallèles indépendantes | claude -w worktrees |
| Débogage complexe, cause racine inconnue | Hypothèses concurrentes (Agent Teams) |
| Changements sensibles à la sécurité | Revue en contexte vierge |
La plupart du travail quotidien n'a pas besoin de multi-session. Réservez-le pour quand ça vaut le surcoût de coordination.
Configuration
cd sample-projects/hackathon-starterTâche 1 : Explore → Plan → Build (15 minutes)
C'est le pattern principal pour le travail sur du code legacy. L'Explorer cartographie le territoire avec tout son contexte. Le Builder travaille depuis la carte, sans jamais brûler son contexte sur de l'archéologie.
Étape 1 : Lancer l'Explorer (Terminal A)
Ouvrez un terminal et naviguez vers le projet :
cd sample-projects/hackathon-starter
claudeDès que Claude démarre, nommez la session :
/rename explore-lab35Activez le Plan Mode en appuyant deux fois sur Shift+Tab (le mode cycle : Normal → Auto-Accept → Plan Mode). L'indicateur de mode change dans l'interface. En Plan Mode, Claude planifie et lit des fichiers, mais ne modifie rien.
Vous pouvez aussi démarrer directement avec le flag :
claude --permission-mode planÉtape 2 : Donner sa mission à l'Explorer
Donnez ce prompt à l'Explorer (en anglais — Claude fonctionne mieux ainsi) :
Trace the authentication flow in this application. Start from the route handler
for login. Map every file involved: controllers, models, middleware, config.
Note the patterns used (callbacks, promises, passport strategies).
Save your findings to SUMMARY.md. Do not modify any source files.Attendez que l'Explorer termine et produise SUMMARY.md.
Étape 3 : Lire le résumé
Ouvrez SUMMARY.md et lisez-le avant de continuer. Demandez-vous :
- Quels fichiers sont impliqués dans l'authentification ?
- Où se passe la gestion des sessions ?
- Y a-t-il des middlewares inattendus ?
Le résumé est l'artefact de passation. S'il est vague, demandez à l'Explorer d'être plus précis avant de passer à la suite.
Étape 4 : Lancer le Builder (Terminal B)
Ouvrez un second terminal — nouvelle session, contexte vierge :
cd sample-projects/hackathon-starter
claudeNommez cette session immédiatement :
/rename build-lab35Étape 5 : Donner sa mission au Builder
Read SUMMARY.md. Add rate limiting to the login endpoint — max 5 attempts per
IP per 15 minutes. Follow the patterns documented in the summary.
Write tests that match the existing test style.La référence SUMMARY.md charge le fichier dans le contexte. Le Builder travaille depuis la carte de l'Explorer — il n'a jamais à relire les fichiers que l'Explorer a déjà tracés.
Critères de réussite
- [ ] L'Explorer a produit un
SUMMARY.mdutile avec la carte du flux d'auth - [ ] Le Builder a démarré dans une session séparée (contexte vierge)
- [ ] Le Builder n'a pas relu les fichiers que l'Explorer avait déjà cartographiés
- [ ] Le rate limiting est implémenté
- [ ] Les tests passent
Tâche 2 : Worktrees Parallèles avec claude -w (10 minutes)
Quand deux tâches sont indépendantes, lancez-les en parallèle. claude -w crée un répertoire isolé et une branche dédiée pour chaque session — pas de conflits de fichiers, nettoyage automatique.
Ouvrez deux terminaux et lancez-les simultanément :
Terminal 1 :
cd sample-projects/hackathon-starter
claude -w add-validationDonnez-lui cette tâche :
Add input validation to the user registration endpoint.
Validate email format and password strength (min 8 chars, at least one number).Terminal 2 (en même temps) :
cd sample-projects/hackathon-starter
claude -w add-testsDonnez-lui cette tâche :
Write unit tests for the existing user profile update functionality.
Focus on edge cases: missing fields, invalid email, unauthorized access.Les deux tournent en parallèle. Quand vous avez terminé, quittez l'une sans faire de modifications — le worktree et la branche sont supprimés automatiquement.
Critères de réussite
- [ ] Les deux sessions ont tourné simultanément
- [ ] Aucun conflit de fichiers entre elles
- [ ] Le nettoyage automatique a fonctionné sur la session sans modifications
- [ ] Temps total inférieur à une exécution séquentielle
Choisir Votre Approche
| Approche | Quand l'utiliser | Coordination |
|---|---|---|
| Session unique | Tâches séquentielles, changements simples | Aucune nécessaire |
| Subagents | Tâches ciblées où seul le résultat compte | Automatique (l'agent principal gère) |
claude -w | Tâches parallèles, isolation facile | Nettoyage automatique, vous changez de terminal |
| Worktrees manuels | Branches spécifiques, emplacements personnalisés | Manuel (vous gérez tout) |
| Agent Teams (expérimental) | Travail parallèle complexe nécessitant une discussion | Automatisé (liste de tâches partagée + messagerie) |
Isolation worktree des subagents : les subagents peuvent aussi tourner dans leur propre worktree. Demandez à Claude d'utiliser des worktrees pour ses agents, ou ajoutez isolation: worktree dans le frontmatter du subagent.
Guide de Décision Rapide
| Scénario | Recommandation |
|---|---|
| Exploration de code legacy inconnu | Explore → Plan → Build — contexte contrôlé par rôle |
| Grande refactorisation | claude -w — un worktree isolé par rôle |
| Fonctionnalités parallèles indépendantes | claude -w — un worktree par fonctionnalité |
| Subagents qui se marchent dessus | Ajoutez isolation: worktree dans le frontmatter |
| Débogage d'un problème connu | Session unique — la concentration est préférable |
| Audit de sécurité | Agent Teams ou sessions manuelles — plusieurs réviseurs détectent plus |
Conseils pour Réussir
- Nommez vos sessions immédiatement —
/rename explore-lab35dès le démarrage, avant toute autre chose - Reprenez par nom —
claude --resume explore-lab35reprend exactement là où vous vous étiez arrêté - Forkez une session —
claude --resume explore-lab35 --fork-sessioncrée une nouvelle session à partir d'une existante, utile pour bifurquer depuis une exploration - Nettoyez entre les phases —
/clearsi vous restez dans la même session mais changez de rôle - Utilisez les worktrees —
claude -wgère l'isolation et le nettoyage automatiquement - Plan Mode pour l'exploration — Shift+Tab deux fois, ou
--permission-mode plan, empêche les modifications accidentelles pendant la cartographie
Worktrees pour le Travail Parallèle
Worktrees intégrés (recommandé)
Utilisez le flag --worktree (-w) — Claude crée et gère le worktree pour vous :
# Terminal 1 : Claude Explorer dans son propre worktree
claude -w explore-lab35
# Crée .claude/worktrees/explore-lab35/ avec la branche worktree-explore-lab35
# Terminal 2 : Claude Builder dans son propre worktree
claude -w build-lab35
# Crée .claude/worktrees/build-lab35/ avec la branche worktree-build-lab35
# Nom auto-généré si omis
claude -w
# Crée quelque chose comme .claude/worktrees/bright-running-fox/Le nettoyage est automatique : pas de modifications → le worktree et la branche sont supprimés en quittant. Des modifications existent → Claude propose de garder ou supprimer.
Astuce : ajoutez .claude/worktrees/ à votre .gitignore.
Worktrees manuels (pour plus de contrôle)
Quand vous avez besoin d'une branche spécifique ou d'un emplacement personnalisé :
# Créer des worktrees pour le travail parallèle
git worktree add -b explore ../hackathon-explore
git worktree add -b build ../hackathon-build
# Terminal 1 : Claude Explorer
cd ../hackathon-explore && claude
# Terminal 2 : Claude Builder
cd ../hackathon-build && claude
# Vérifier vos worktrees
git worktree list
# Nettoyer quand c'est terminé
git worktree remove ../hackathon-explore
git worktree remove ../hackathon-buildRappel : chaque worktree peut nécessiter sa propre installation de dépendances (npm install, etc.).
Dépannage
Sessions en conflit sur les mêmes fichiers :
- Travaillez sur des fichiers différents, ou utilisez
claude -wpour l'isolation automatique
Confusion de contexte entre sessions :
- Chaque session est indépendante — partagez le contexte pertinent explicitement via
@fichierou copier-coller
L'Explorer modifie du code malgré le Plan Mode :
- Vérifiez que vous êtes bien en Plan Mode (l'indicateur apparaît dans l'interface)
- Ajoutez "Do not modify any source files" au prompt comme filet de sécurité
Plan Mode ne s'active pas :
- Appuyez deux fois sur Shift+Tab depuis le mode par défaut (Normal → Auto-Accept → Plan Mode)
- Ou démarrez avec
claude --permission-mode plan
Trop de sessions ouvertes :
- Commencez avec 2, ajoutez-en plus seulement si nécessaire. Plus n'est pas toujours mieux.
Objectifs Avancés (Stretch Goals)
Si vous finissez en avance :
1. Essayez les Agent Teams
Activez CLAUDE_CODE_EXPERIMENTAL_AGENT_TEAMS, puis essayez :
Create an agent team to review the authentication module from three angles:
one teammate focused on security vulnerabilities, one on performance bottlenecks,
one on test coverage gaps. Synthesize their findings into a single report.Utilisez claude --teammate-mode in-process pour garder tous les coéquipiers dans un terminal (Shift+Down pour naviguer entre eux), ou --teammate-mode tmux pour des panneaux séparés.
Limitation connue : /resume ne restaure pas les coéquipiers in-process. Si vous reprenez une session, le leader peut essayer de contacter des coéquipiers qui n'existent plus — dites-lui d'en créer de nouveaux.
2. Isolation de subagent avec worktree
Reprenez un subagent du Module 3.2 et ajoutez isolation: worktree dans son frontmatter. Observez comment chaque subagent obtient son propre répertoire isolé.
3. Aperçu de claude -p
Essayez claude -p pour exécuter une tâche en mode headless (sans interface interactive). C'est un avant-goût du Module 3.6 sur le CI/CD.
Livrables
À la fin de ce lab, vous devriez avoir :
- Un fichier
SUMMARY.mdproduit par l'Explorer - Des modifications de code faites par le Builder depuis un contexte vierge
- La compréhension concrète de quand chaque pattern vaut son surcoût de coordination
Prochaines Étapes
Après avoir complété ce lab, passez au Lab 3.6 : CI/CD & Mode Headless.