Exécuter du JavaScript généré par un agent dans une JVM
QuickJS et WebAssembly permettent d’exécuter du JavaScript dans une JVM avec des accès limités. Les fonctions exposées et les quotas restent à contrôler.
Article
Répartir une mission entre agents peut aider, mais exige des consignes précises et des contrôles. Comment délimiter les tâches et vérifier leur assemblage.
Pour préparer une étude, un agent peut rechercher des informations pendant qu'un autre analyse un document. Un coordinateur rassemble ensuite leurs résultats. Cette répartition est utile si les tâches sont réellement séparables. Elle devient fragile si les agents prennent des décisions incompatibles ou répètent le même travail. La qualité de la délégation et de la vérification compte autant que le nombre d'agents.
Un agent chargé de rechercher, calculer, décider et modifier des données doit suivre de nombreux éléments à la fois. Il peut perdre une contrainte ou utiliser un outil inadapté. La délégation est une option pour réduire cette charge, mais elle ajoute des échanges et des résultats à contrôler.
L'organisation décrite ici comporte un coordinateur et des agents spécialisés. Elle est aussi appelée orchestrator-worker, ou « maître-serviteur » dans le schéma. Le coordinateur garde l'objectif global ; chaque agent reçoit une partie délimitée du travail.
| Le maître | Un serviteur | |
|---|---|---|
| Ce qu'il fait | découpe, répartit, vérifie, assemble | exécute une mission précise |
| Son contexte | léger : aucune règle métier locale | mince : une mission, quelques outils |
| Sa durée de vie | celle de la demande | jetable, remplaçable |
| Ce qu'il connaît des autres | ses serviteurs | ce que le maître lui transmet de la demande d'origine |
Dans cette organisation, le coordinateur confie les tâches spécialisées à des agents dont le contexte et les outils sont adaptés. Il reste responsable de leur articulation et doit savoir quels résultats peuvent être produits en parallèle ou dépendent d'une étape précédente.
Un contexte limité aide un agent à se concentrer sur sa mission. Il ne garantit pas son exactitude : une mauvaise hypothèse peut encore affecter tout le résultat si le coordinateur l'accepte. Les consignes doivent donc préciser l'objectif, les limites et la manière de vérifier le livrable.
Deux agents isolés peuvent choisir des conventions différentes. Pour une étude comparative, l'un peut comparer des prix mensuels et l'autre des prix annuels. Le coordinateur doit fixer les unités, la période et les critères communs avant leur départ, puis contrôler leur respect au retour.
Qui appelle qui, qui valide quoi : ce sont des choix de dépendances, avec les mêmes pièges qu'ailleurs (voir Le sens des dépendances : qui doit connaître qui ?). Le maître connaît ses serviteurs ; l'inverse n'a pas à être vrai.
Une erreur de recherche peut devenir une erreur d'analyse, puis une recommandation incorrecte. Je recommande de vérifier les éléments qui conditionnent la suite avant de les transmettre : sources, calculs, format attendu et limites de la conclusion.
Les contrôles peuvent être automatiques lorsque les critères sont explicites. Un humain peut être nécessaire pour un résultat ambigu ou une action à forte conséquence. Demander simplement à un autre modèle si le travail semble correct ne garantit pas qu'il en détectera les erreurs.
Les retours de Cognition et d'Anthropic décrivent des usages différents. Ils montrent à la fois des bénéfices de la répartition et le coût des pertes de contexte entre agents.
Cognition publie en juin 2025 un essai qui décrit mot pour mot le pattern défendu ici — un agent qui « découpe son travail en plusieurs parties, lance des sous-agents sur ces parties, puis combine les résultats » — pour le disqualifier : « c'est une architecture tentante, surtout dans un domaine où les tâches ont plusieurs composantes parallèles. Elle est pourtant très fragile. » Sa recommandation d'alors : l'agent linéaire mono-thread.
Anthropic publie le lendemain le récit d'un système multi-agents. Cognition précisera plus tard que la coïncidence était fortuite et que les deux billets « arrivaient à des conclusions similaires ».
Anthropic nomme son architecture orchestrator-worker, et ses sous-agents travaillent en parallèle avec leur propre fenêtre de contexte avant de rendre leurs trouvailles à un agent chef. Mais l'isolement n'y est pas une vertu : c'est un problème qu'il a fallu corriger. Des instructions trop courtes ont fait que « des sous-agents ont mal interprété la tâche ou ont effectué exactement les mêmes recherches que d'autres agents » — L'un explorait la pénurie de puces de 2021 pendant que deux autres dupliquaient un travail sur 2025.
Anthropic recommande donc de donner à chaque agent un objectif, un format de sortie, les outils et sources utiles ainsi que des limites de mission. Ces éléments évitent que chacun redéfinisse la tâche à sa façon.
Le chiffre souvent cité mérite aussi sa condition. Le système d'Anthropic, Opus 4 en tête et Sonnet 4 en sous-agents, « a dépassé de 90,2 % l'agent seul sur notre évaluation interne de recherche », sur des requêtes en largeur. Il se paie : « les systèmes multi-agents consomment environ quinze fois plus de jetons qu'une conversation ».
Quant à la position de Cognition, elle a évolué sans devenir un ralliement. Son texte d'avril 2026 décrit « la forme pratique : découper, exécuter, puis gérer — un gestionnaire répartit le travail, les enfants exécutent, le gestionnaire synthétise et rend compte », en la donnant pour un chantier ouvert. Et sa condition n'est pas celle que je formulais : « les écritures restent mono-thread et les agents supplémentaires apportent de l'intelligence plutôt que des actions ». Un seul agent écrit, les autres conseillent.
Dans le pattern décrit ici, les serviteurs agissent. C'est un pas de plus que ce que Cognition tient aujourd'hui pour éprouvé, et le maître le paie en validation. Le pattern maître ↔ serviteur est donc un pari raisonné, pas une conclusion partagée.
Un agent qui accumule trop de règles locales mérite une révision de son périmètre. La réponse peut être une délégation, mais aussi un meilleur outil, un contexte mieux choisi ou un traitement classique. Mesurez l'effet du découpage sur la réussite et sur le coût total avant de le généraliser.
Le pattern garde l'agent là où il est utile (l'ambiguïté, le cadrage, l'imprévu) et en sort tout ce qui est devenu stable. Quand un serviteur fait toujours la même chose de la même manière, demandez-vous s'il a encore besoin d'être un agent.
Explorer
Choisis dans l’index d’après les étiquettes de cet article — les plus proches d’abord, hors de sa série. Rien n’est écrit à la main : un article publié demain avec les mêmes étiquettes y prendra place.
QuickJS et WebAssembly permettent d’exécuter du JavaScript dans une JVM avec des accès limités. Les fonctions exposées et les quotas restent à contrôler.
Un agent peut suivre les liens et les actions d’une API hypermédia. Voici comment cela fonctionne, ce que MCP apporte et les critères utiles pour choisir.
Un grand catalogue occupe du contexte et peut compliquer le choix des outils. La découverte à la demande aide, à condition de mesurer la réussite de la tâche.
Laisser un commentaire
Votre commentaire sera relu avant d'être publié.