Travail parallèle
Le parallélisme apporte un contexte frais par unité et de la vitesse. Il a un coût : une coordination — un fan-in qui doit attendre, une fusion qui ne doit pas entrer en collision, un juge qui ne doit pas être le créateur. Utilisez-le là où les unités sont vraiment indépendantes, et payez le coût de coordination explicitement.
Prérequis
- Les unités sont indépendantes : aucune n'a besoin du résultat d'une autre pour commencer.
- Vous savez quelles sont les unités. Cause inconnue → un seul dispatch d'investigation d'abord.
- Les écritures sont isolées : chaque unité écrit dans des fichiers différents, ou chaque unité s'exécute dans son propre worktree et ne commit que les fichiers qu'elle a touchés (mécanique : section Isolation de delegate/references/harness-notes/claude-code.md).
Si l'un manque → sérialisez ou investiguez d'abord.
Formes
Fan-out, fan-in. N dispatches de la même phase, un par unité, envoyés ensemble. Un seul dispatch de consolidation attend tous les résultats - cette attente est la barrière - et fusionne leurs fichiers de livraison en un seul. Gardez la sortie de chaque unité dans un fichier ; le consolidateur lit les chemins, pas votre contexte.
Fan-out mécanique. Un dispatch process décide du changement exact une fois. N dispatches génériques l'appliquent textuellement, chacun à ses propres cibles. Un dispatch review vérifie l'ensemble. L'orchestrateur n'applique jamais la modification lui-même, aussi petit que soit l'ensemble.
Créateur/vérificateur. Celui qui produit un résultat ne le juge jamais. Acheminez review à un agent différent - un agent de type réviseur pour le domaine où il en existe un, sinon un spécialiste dans un rôle différent - avec les critères de succès et le chemin de l'artefact, et rien du raisonnement du créateur.
Génération et filtrage. Fan-out pour produire des candidats ; un dispatch déduplique et les note par rapport à une grille écrite ; seuls les survivants continuent. Écrivez la grille avant de générer.
Tournoi. Pour classer un ensemble trop grand pour être jugé en une seule fenêtre : dispatches de comparaison par paires, chacun contenant deux éléments, avec un tableau de tournoi tenu dans un fichier. Les jugements comparatifs sont plus fiables que les scores absolus.
Fan-out d'hypothèses. Pour la cause racine : un dispatch par source de preuves disjointes (logs, code, données) forme une hypothèse à partir de sa seule source. Puis un dispatch par hypothèse tente de la réfuter. Ce qui survit à la réfutation est la conclusion.
Boucle jusqu'à arrêt. Pour un travail de taille inconnue : répéter un dispatch jusqu'à ce qu'une condition observable soit remplie - pas de nouvelles conclusions, zéro erreur dans la sortie de gate, le fichier de checklist n'a aucun élément non coché. Fixez la limite avant la première itération (par défaut 5). À la limite, signalez PARTIAL avec ce qui reste.
Fan-out de checklist
Un fichier markdown d'éléments - [ ] est une liste d'unités prête à l'emploi : un dispatch par élément non coché, chacun invité à cocher sa propre ligne lors de DONE, puis boucle jusqu'à arrêt sur « aucun élément non coché restant. » Sérialsez les éléments qui nomment le même fichier.
Limites et conditions d'arrêt
Chaque boucle et chaque fan-in a un nombre écrit avant de commencer : itérations, re-dispatches ou unités. Atteindre la limite est un rapport PARTIAL ou BLOCKED à l'utilisateur, jamais une nouvelle tentative silencieuse.
Équipes persistantes
Certains harnesses offrent des équipes d'agents à longue durée de vie avec des listes de tâches partagées et de la messagerie. Elles ajoutent une surcharge d'instruction et de communication que les agents suivent de manière incohérente, et elles ne sont pas portables entre les harnesses. Les formes ci-dessus n'en ont pas besoin. Recourez à une équipe uniquement lorsque les agents doivent échanger des messages en cours de tâche, et alors consultez les notes du harness.
Pointeurs
- delegate — le modèle de prompt qu'utilise chaque unité.
- delegate/references/harness-notes/claude-code.md — comment envoyer des dispatches concurrents, isoler des worktrees, et transformer un pipeline long en script de workflow sur Claude Code.