Accueil / Plusieurs agents et vérification adverse
Faire tenir un fan-out à grande échelle
Un livrable volumineux confié à un seul agent se fait couper par une limite de taille sans que rien ne soit écrit : fractionner par axe, faire écrire chaque agent sur son propre fichier, respecter le plafond documenté de seize agents actifs à la fois et de mille agents au total sur un même run, un seul appel acceptant jusqu'à 4 096 éléments que le runtime ordonnance lui même sous ce plafond, puis vérifier en comparant les fichiers attendus à ce qui existe réellement sur le disque plutôt que de croire les agents sur parole.
Un agent unique chargé d'écrire un livrable trop long se fait interrompre par une limite de taille de sortie, et rien n'est écrit sur le disque : la tâche paraît impossible alors que le problème tient au découpage. La parade tient en une phrase, un agent par axe, chacun écrivant son propre fichier, pour que la limite ne porte plus jamais que sur un seul fichier à la fois plutôt que sur l'ensemble du livrable.
Le plafond documenté
Claude Code plafonne le nombre d'agents actifs en même temps à seize, un chiffre qui redescend si la machine dispose de moins de processeurs, y compris dans un conteneur dont le nombre de cœurs est limité. Un second plafond, distinct du premier, limite à mille le nombre total d'agents lancés sur l'ensemble d'un même run, justement pour empêcher une boucle qui s'emballerait et relancerait des agents sans fin. Ces deux compteurs ne se confondent pas : le premier borne ce qui tourne au même instant, le second borne le cumul sur toute la durée du travail. Un troisième chiffre change la donne pratique : un seul appel parallel() ou pipeline() accepte jusqu'à quatre mille quatre-vingt-seize éléments, et c'est le runtime lui même qui les ordonnance sous le plafond de seize, sans intervention manuelle, un envoi plus long étant simplement rejeté avec une erreur plutôt que silencieusement tronqué. Le découpage manuel en vagues successives, chaque vague vérifiée avant que la suivante ne démarre, garde son utilité, mais comme un choix pour vérifier le travail par lots plutôt que comme la seule façon de rester sous le plafond de concurrence.
Vérifier le disque, pas le rapport
Un agent qui affirme avoir écrit son fichier peut se tromper, sur son propre chemin de sortie ou sur le contenu réellement produit. La discipline qui referme la boucle consiste à écrire, avant de lancer le fan-out, la liste exacte des fichiers attendus, puis à la comparer après coup à ce qui existe vraiment sur le disque, jamais aux comptes rendus renvoyés par les agents eux mêmes.
# liste attendue, écrite avant le lancement
cat > attendus.txt < obtenus.txt
diff attendus.txt obtenus.txt
Un dernier réflexe économise du budget sur un grand volume d'appels similaires qui n'ont pas besoin d'une réponse immédiate. La Batch API traite ce genre de travail de façon asynchrone avec une remise de cinquante pour cent sur le coût en jetons, sur un quota de débit séparé de celui des appels en direct. Elle convient à un fan-out déjà écrit et prêt à tourner en une seule fois, pas à un travail dont chaque étape dépend du résultat de la précédente.
Ces trois disciplines se combinent dans l'ordre inverse de leur découverte. On isole d'abord chaque agent dans son worktree, on respecte ensuite le plafond de concurrence par des vagues, et on vérifie enfin sur le disque ce que le fan-out a réellement produit, jamais ce que les agents en ont dit.
Deux plafonds distincts sur un fan-out
Un fan-out vérifié par vagues, un choix et non une obligation
Une coordinatrice lance vingt-quatre agents en une seule fois pour rédiger chacun la fiche d'un produit différent du catalogue, chaque agent recevant pour instruction d'écrire son résultat dans un fichier séparé portant le nom du produit.
Écrivez en une phrase ce que cette situation établit, et en une phrase ce qu'elle n'établit pas.
Ce que cela établit : Le nombre d'agents demandé en une seule fois, vingt-quatre, dépasse le plafond de seize agents actifs simultanément, mais reste largement sous la limite de 4 096 éléments par appel, donc le runtime ordonnance lui même ces vingt-quatre agents par groupes sans que la coordinatrice n'ait rien à découper.
Ce que cela n’établit pas : Cela n'établit pas combien des vingt-quatre fichiers attendus existent réellement sur le disque à la fin, ni si leur contenu correspond au produit annoncé dans leur nom.
Les trois calibrages faux les plus courants
- Trop large Cette situation prouve que les huit agents en trop échoueront complètement et ne produiront jamais leur fichier.
- Trop étroit Cette situation ne dit rien sur le nombre d'agents demandé, puisque seul le résultat final compte.
- À côté Cette situation montre que le catalogue de produits contient au moins vingt-quatre références différentes.
- Un agent unique chargé d'écrire un livrable trop long se fait interrompre par une limite de taille de sortie, et rien n'est écrit sur le disque tant que le découpage par axe et par fichier n'a pas été fait.
- Le plafond de seize agents actifs à la fois et le plafond de mille agents au total sur un même run sont deux compteurs distincts, l'un pour l'instant présent, l'autre pour le cumul.
- Un seul appel parallel() ou pipeline() accepte jusqu'à 4 096 éléments et le runtime les ordonnance lui même sous le plafond de concurrence ; découper en vagues reste utile pour vérifier le travail par lots, pas pour respecter le plafond, que le runtime respecte déjà.
- La liste des fichiers attendus, écrite avant le lancement du fan-out, se compare au contenu réel du dossier de sortie, jamais aux comptes rendus renvoyés par les agents.
Avant votre prochain fan-out de plus de quelques agents, écrivez dans un fichier la liste exacte des fichiers que vous attendez, lancez le fan-out, puis comparez cette liste au contenu réel du dossier de sortie avant de faire confiance au moindre compte rendu d'agent.
Ces points dépendent d’une interface ou d’une règle qui peut avoir changé depuis la rédaction. Vérifiez-les sur votre propre écran avant de vous y fier.
- Vérifiez dans la documentation actuelle de Claude Code si le plafond de seize agents concurrents a changé depuis la rédaction de cette leçon, ce plafond dépend du nombre de processeurs disponibles sur la machine qui l'exécute.
Chaque affirmation datable de cette leçon renvoie ici au texte public qui la porte. Une source qui ne s’ouvre pas ne prouve rien.
- Claude Code, documentation des workflows, consultée le 2026-09-02 consultée le 2026-09-02
- Batch API, documentation Claude, consultée le 2026-09-02 consultée le 2026-09-02