Subagents IA : pourquoi un seul agent fait souvent mieux

Tout le monde veut des armées d’agents qui bossent en parallèle. Moi, je travaille avec un seul agent, presque tout le temps. Les subagents, je laisse mon agent principal les gérer quand il en a besoin. Le plus souvent, c’est sur de gros projets dont le code est réparti dans plusieurs dépôts.

Subagents IA : pourquoi un seul agent fait souvent mieux

Le schéma qu'on voit partout

Vous avez sûrement vu passer le schéma. Un agent principal découpe la tâche et envoie des subagents travailler chacun sur un morceau. Ensuite, il recolle les résultats. Un agent pour le front, un pour le back, un pour les tests, un pour la doc.

Sur un tableau blanc, c'est beau. On dirait une vraie équipe. En pratique, c'est souvent moins bien qu'un seul agent.

Le problème, c'est le contexte

Un subagent démarre avec une fenêtre de contexte presque vide. Il reçoit un résumé de ce qu'on attend de lui, pas tout ce qui s'est dit avant. Les échanges avec vous, les fichiers déjà lus, les essais ratés, les petites décisions prises en route : tout ça reste dans la tête de l'agent principal.

Même si vous donnez la tâche complète à chaque subagent, ils ne voient pas ce que fait l'autre. Chacun fait ses propres choix de style, de structure et de nommage. Et ces choix finissent par se contredire.

Anthropic arrive à la même conclusion

C'est ce qui m'a donné l'idée d'écrire cet article. Anthropic vient de publier à peu près la même chose [lien à compléter]. Leur équipe a comparé plusieurs déploiements en entreprise. Résultat : un seul agent avec des skills fait souvent mieux qu'une architecture à subagents. La qualité est meilleure, et c'est souvent moins cher et plus rapide. Un client a mesuré un temps d'exécution environ deux fois plus court avec un seul agent.

Ils parlent aussi d'un travers que je trouve vraiment drôle. Chaque équipe de l'entreprise veut son propre subagent, donc l'architecture finit par copier l'organigramme. On se retrouve avec des centaines de subagents qui se chevauchent et un prompt système où chaque équipe a ajouté sa phrase. Et l'info se perd à chaque passage d'un agent à l'autre, comme au jeu du téléphone.

Leur solution, c'est la divulgation progressive. L'agent voit une courte description de chaque skill et de chaque outil, et il charge le détail seulement quand il en a besoin. Ça évite de saturer le contexte, qui était justement la principale raison de découper le travail en subagents. En plus, les modèles récents tiennent beaucoup plus de choses dans une seule boucle qu'on le pensait.

Comment je travaille

J'utilise un agent principal, avec une seule conversation par morceau de travail. Il lit le code, le modifie, lance les tests et corrige. Tout ce qu'il apprend reste au même endroit. Si je reviens sur un détail une demi-heure plus tard, il sait encore pourquoi on a fait tel choix, parce que c'est lui qui l'a fait.

Je n'ai pas de subagent pour la revue, ni pour la planification, ni pour la doc. Honnêtement, je n'en ai jamais ressenti le besoin.

Une conversation par morceau

Ça ne veut pas dire qu'un projet entier tient dans le même chat. Sur un gros projet, j'ouvre une nouvelle conversation pour chaque morceau. Je reste dedans jusqu'à ce que le morceau soit fini, puis je repars à neuf.

Si un morceau s'étire et que la conversation devient lourde, je demande à l'agent d'écrire une documentation ou bien un petit fichier AVANCEMENT.md. J'ai un prompt juste pour ça. Le fichier contient ce qui est décidé, ce qui est réglé et ce qui reste à faire. La conversation suivante reprend là où l'autre s'est arrêtée, sans que j'aie à tout réexpliquer. Une fois la partie terminée, je supprime le fichier.

Mais le vrai truc, c'est d'avancer par petits bouts. Une petite tâche tient facilement dans une seule conversation, et l'agent garde tout son contexte du début à la fin.

Je laisse mon agent gérer les subagents

Je ne lance pas de subagents moi-même. Je ne les configure pas et je ne leur donne pas de rôle. C'est mon agent principal qui décide d'en créer un quand il en a besoin.

Dans les faits, ça arrive surtout sur les gros projets dont le code est réparti dans plusieurs repos. Par exemple, un projet qui repose sur plusieurs packages npm, chacun dans son propre repo. Mon agent principal envoie alors des subagents travailler dans les repos des différents packages pendant qu'il continue de son côté.

Et ça marche bien, parce que c'est le cas idéal. Chaque package a son propre code, dans son propre repo. Les tâches ont très peu de contexte en commun, et chaque subagent rend un résultat court. Il n'y a pas deux agents qui prennent des décisions contradictoires dans le même code. C'est du vrai travail en parallèle, pas une équipe qui se pile sur les pieds.

Quand les subagents valent le coup

Je ne dis pas que les subagents sont inutiles. Anthropic donne trois cas où ils ont leur place, et je suis plutôt d'accord :

  • un seul agent perd en qualité de façon mesurable parce que son contexte déborde ;
  • plusieurs tâches indépendantes peuvent tourner en parallèle, chacune avec un contexte neuf qu'on jette une fois le travail fini ;
  • un seul agent n'arrive plus à choisir les bons outils, ou son prompt contient des consignes qui se contredisent.

Si vous devez découper, découpez par contexte et pas par métier. Donnez à chaque subagent un morceau qui a besoin de très peu du reste, et demandez-lui un résultat court. Une recherche isolée ou une vérification indépendante, oui. Un « agent du front » et un « agent du back » qui doivent se mettre d'accord, non.

Commencez avec un seul agent

Commencez avec un seul agent et avancez par petits bouts pour qu'il garde tout son contexte. Ajoutez un subagent quand vous avez une raison concrète, pas parce que le schéma est joli. Dans mon cas, je laisse l'agent décider lui-même quand il en a besoin. Et le plus souvent, c'est quand un projet se divise en plusieurs repos, comme des packages npm.

Intermédiaire · IA · publié le 26 octobre 2026Tous les articlesS’abonner au flux
À lire ensuite
Petit personnage en pixel art lumineux, mascotte de Claude Code, entouré de feuilles de documents flottant dans une pénombre orangée.IA7 novembre 2026 · 10 minutes

Travailler avec l'IA : ma méthode avec Claude Code

Je traite l'IA comme un collègue : elle fait le travail, mais c'est moi qui décide et qui valide. Je l'utilise tous les jours avec Claude Code dans le terminal, sur une soixantaine de projets. Voici comment je lui parle, comment j'avance avec elle, les règles que je lui ai fixées et les agents qu'elle peut lancer pour des tâches précises.
Programmation10 février 2024

Débuter en programmation: Quel langage pour commencer?

Tout d'abord, il est important de comprendre que le choix du premier langage de programmation dépend avant tout de vos objectifs et de ce que vous voulez accomplir en programmation. Si vous voulez développer des applications Web, vous devriez considérer des langages tels que HTML, CSS, JavaScript, Python ou Ruby. Si vous voulez développer des applications mobiles, Swift pour iOS et Java pour Android sont des options populaires. Si vous voulez apprendre la programmation pour la compréhension des concepts de base, des langages tels que Python ou Scratch peuvent être plus adaptés.
Développement web17 mai 2023

Comment afficher deux favicons différents selon le thème du navigateur

Les thèmes sombres et clairs sont devenus de plus en plus populaires dans les navigateurs web modernes, offrant aux utilisateurs la possibilité de personnaliser leur expérience de navigation. Si vous souhaitez ajouter une touche personnalisée à votre site web, vous pouvez envisager d’utiliser deux favicons différents en fonction du thème du navigateur de vos utilisateurs. Dans cet article, je vais vous montrer comment faire ça facilement pour vous assurer que votre site web est toujours esthétiquement cohérent, quel que soit le thème choisi par l’utilisateur.