Un harnais pour chaque tâche : workflows dynamiques dans Claude Code

@trq212
ANGLAISil y a 1 mois · 02 juin 2026
2.8M
9.6K
1.2K
231
22.5K

TL;DR

Anthropic introduit des workflows dynamiques pour Claude Code, permettant à l'IA de générer des harnais JavaScript personnalisés qui orchestrent des sous-agents pour résoudre des tâches complexes en plusieurs étapes, tout en évitant les modes de défaillance courants de l'IA.

La semaine dernière, nous avons publié les workflows dynamiques dans Claude Code. Claude peut désormais écrire son propre harness à la volée, sur mesure pour la tâche à accomplir.

Bien que le harness par défaut de Claude Code soit conçu pour le codage, il est également utile pour de nombreux autres types de tâches, car, en fin de compte, de nombreuses tâches ressemblent à des tâches de codage. Mais il existe certaines catégories de tâches pour lesquelles nous avons dû construire des harness personnalisés au-dessus de Claude Code afin d'atteindre des performances optimales, comme la Recherche, l'analyse de sécurité, les équipes d'agents ou la Revue de code.

Les workflows vous permettent de créer dynamiquement des harness qui permettent à Claude de résoudre tous ces problèmes et bien plus encore nativement dans Claude Code. Vous pouvez également partager et réutiliser ces workflows avec d'autres.

Dans cet article, je vais couvrir mes premières expériences et apprentissages avec les workflows afin que vous puissiez en tirer le meilleur parti.

Cela dit, les bonnes pratiques sont encore en développement ! Les workflows dynamiques utilisent souvent plus de tokens, alors réfléchissez bien au moment et à la manière de les utiliser.

Remarque : cet article est également disponible sur le blog Claude

Exemples de prompts

Avant de plonger dans les détails techniques, j'aimerais commencer par quelques exemples de prompts pour vous faire réfléchir aux possibilités offertes par les workflows :

  • « Ce test échoue environ 1 fois sur 50. Configure un workflow pour le reproduire, formule des théories et teste-les de manière adversarial dans des worktrees /goal ne t'arrête pas tant qu'une théorie ne fonctionne pas. »
  • « À l'aide d'un workflow, parcours mes 50 dernières sessions et extrais les corrections que je fais constamment, puis transforme les récurrentes en règles CLAUDE.md. »
  • « Utilise un workflow pour fouiller les #incidents dans Slack des six derniers mois et trouver les causes racines récurrentes pour lesquelles personne n'a ouvert de ticket. »
  • « Prends mon business plan et exécute un workflow où différents agents le démontent du point de vue d'un investisseur, d'un client et d'un concurrent. »
  • « Voici un dossier de 80 CV, utilise un workflow pour les classer pour le poste de backend et vérifie les dix premiers. Fais-moi passer un entretien en utilisant l'outil AskUserQuestion pour une grille d'évaluation. »
  • « J'ai besoin d'un nom pour cet outil en ligne de commande. Utilise un workflow pour trouver un tas d'options et organise un tournoi pour sélectionner les 3 meilleures. »
  • « Utilise un workflow pour renommer notre modèle User en Account partout. »
  • « Parcours mon brouillon d'article de blog et, à l'aide d'un workflow, vérifie chaque affirmation technique par rapport à la base de code, je ne veux rien publier de faux. »

Comment fonctionnent les workflows dynamiques

Les workflows dynamiques exécutent un fichier JavaScript avec quelques fonctions spéciales qui aident à créer et coordonner des sous-agents :

Thariq - inline image

Les workflows dynamiques incluent également des fonctions JavaScript standard comme JSON, Math et Array, pour aider à traiter les données.

Il est particulièrement utile de savoir que les workflows dynamiques peuvent décider quels modèles un agent utilise et si les sous-agents sont exécutés dans leur propre worktree, permettant à Claude de choisir le niveau d'intelligence et d'isolement nécessaire.

Si un workflow est interrompu, par exemple par une action de l'utilisateur ou la fermeture du terminal, la reprise de la session permettra au workflow de reprendre là où il s'était arrêté.

Pourquoi les workflows dynamiques

Lorsque vous demandez au harness par défaut de Claude Code d'effectuer une tâche, il doit à la fois planifier et exécuter dans la même fenêtre de contexte. Pour de nombreuses tâches de codage, c'est très efficace, mais cela peut parfois échouer pour des tâches longues, massivement parallèles et/ou hautement structurées de manière adversarial.

En effet, plus Claude travaille longtemps sur une tâche complexe dans une seule fenêtre de contexte, plus il devient sujet à certains modes de défaillance spécifiques :

  • La paresse agentique fait référence au moment où Claude s'arrête avant d'avoir terminé une tâche particulièrement complexe et composée de plusieurs parties, et déclare le travail terminé après des progrès partiels, par exemple en traitant 20 des 50 éléments d'une revue de sécurité.
  • Le biais d'auto-préférence fait référence à la tendance de Claude à préférer ses propres résultats ou conclusions, surtout lorsqu'on lui demande de les vérifier ou de les juger par rapport à une grille.
  • La dérive d'objectif fait référence à la perte progressive de fidélité à l'objectif initial au fil de nombreuses itérations, surtout après un compactage. Chaque étape de résumé est avec perte, et des détails comme les exigences de cas limites ou les contraintes « ne fais pas X » peuvent être perdus.

Créer un workflow aide à lutter contre ces problèmes en orchestrant des Claudes séparés avec leurs propres fenêtres de contexte et des objectifs ciblés et isolés.

Workflows dynamiques vs statiques

Vous avez peut-être déjà créé un workflow statique en utilisant le SDK Agent Claude ou claude -p pour coordonner plusieurs instances de Claude Code ensemble.

Mais comme les workflows statiques doivent fonctionner pour tous les cas limites, ils sont généralement plus génériques. Avec Claude Opus 4.8 et les workflows dynamiques, Claude est désormais assez intelligent pour écrire un harness sur mesure pour votre cas d'utilisation.

Thariq - inline image

Modèles utiles lors de l'utilisation des workflows dynamiques

Vous pouvez commencer à utiliser les workflows dynamiques simplement en demandant à Claude d'en créer un, ou en utilisant le mot déclencheur « ultracode » pour garantir que Claude Code crée un workflow.

Mais construire un modèle mental du fonctionnement des workflows dynamiques vous aidera à comprendre quand les utiliser et comment vous pourriez orienter Claude via des prompts.

Il existe quelques modèles courants que Claude pourrait utiliser et combiner lors de la création de workflows :

Thariq - inline image

Classifier et agir

Utilisez un agent classifieur pour décider du type de tâche, puis orientez vers différents agents ou comportements en fonction de la tâche. Ou utilisez un classifieur à la fin pour déterminer la sortie.

Diviser et synthétiser

Divisez une tâche en plusieurs petites étapes, exécutez un agent sur chaque étape, puis synthétisez ces résultats. C'est particulièrement utile lorsqu'il y a un grand nombre de petites étapes, ou lorsque chaque étape bénéficie de sa propre fenêtre de contexte propre pour éviter les interférences ou la contamination croisée. L'étape de synthèse est une barrière : elle attend que tous les agents de division aient terminé, puis fusionne leurs sorties structurées en un seul résultat.

Vérification adversarial

Pour chaque agent généré, exécutez un autre agent généré pour vérifier de manière adversarial sa sortie par rapport à une grille ou à des critères.

Générer et filtrer

Générez un certain nombre d'idées sur un sujet, puis filtrez-les selon une grille ou par vérification, dédupliquez les doublons et ne renvoyez que les idées de la plus haute qualité testées.

Tournoi

Au lieu de diviser le travail, faites en sorte que les agents rivalisent. Générez N agents qui tentent chacun la même tâche en utilisant des approches différentes. Les prompts ou les modèles jugent ensuite les résultats par paires à l'aide d'un agent juge jusqu'à ce qu'un gagnant soit désigné.

Boucle jusqu'à terminaison

Pour les tâches dont la quantité de travail est inconnue, bouclez la génération d'agents jusqu'à ce qu'une condition d'arrêt soit remplie (aucune nouvelle découverte, ou plus d'erreurs dans les journaux) au lieu d'un nombre fixe de passages.

Cas d'utilisation

Réfléchissez de manière créative au moment et à la manière de demander à Claude Code de créer des workflows dynamiques. J'ai constaté que les workflows sont parfois encore plus utiles pour les tâches non techniques.

Thariq - inline image

Migrations et refontes

Bun a été réécrit de Zig à Rust en utilisant des workflows. Vous pouvez en lire plus dans le fil X de Jarred.

La clé est de décomposer la tâche en une série d'étapes sur lesquelles il faut opérer, par exemple les sites d'appel, les tests qui échouent, les modules, etc. Démarrez un sous-agent pour chaque correction dans un worktree pour effectuer la correction, puis faites en sorte qu'un autre agent la révise de manière adversarial, et fusionnez. Envisagez de dire à l'agent de ne pas utiliser de commandes gourmandes en ressources afin de pouvoir paralléliser au maximum sans épuiser les ressources de votre machine.

Recherche approfondie

Nous avons publié une compétence de recherche approfondie (/deep-research) dans Claude Code qui utilise des workflows dynamiques. Plus précisément, elle déploie des recherches web, récupère des sources, vérifie leurs affirmations de manière adversarial et synthétise un rapport cité.

Mais vous pouvez effectuer ce type de recherche pour bien plus que de simples recherches web. Par exemple, demander à Claude de compiler un rapport d'état à partir du contexte dans Slack ou de rechercher comment une fonctionnalité fonctionne en explorant une base de code en profondeur.

Vérification approfondie

Thariq - inline image

D'autre part, si vous avez un rapport dans lequel vous souhaitez vérifier et sourcer chaque affirmation factuelle qu'il référence, vous pouvez générer un workflow dans lequel un agent identifie toutes les affirmations factuelles, puis démarre un sous-agent pour vérifier chacune en détail. Vous pouvez également avoir un agent de vérification qui vérifie le sous-agent source pour s'assurer que sa source est de haute qualité.

Tri

Thariq - inline image

Vous pouvez avoir une liste d'éléments que vous souhaitez trier selon une mesure qualitative pour laquelle vous pensez que Claude Code est performant, par exemple : des tickets de support triés par gravité du bug. Mais si vous essayez de trier plus de 1000 lignes en un seul prompt, la qualité se dégrade et cela ne tient pas dans le contexte. Utilisez plutôt un tournoi, un pipeline d'agents de comparaison par paires (le jugement comparatif est plus fiable que la notation absolue), ou classez par lots en parallèle, puis fusionnez. Chaque comparaison est son propre agent, donc la boucle déterministe conserve le bracket et seul l'ordre d'exécution reste dans le contexte.

Mémoire et respect des règles

Thariq - inline image

Si vous avez un ensemble particulier de règles que Claude omet ou a du mal à respecter, même lorsqu'elles sont placées dans les CLAUDE.md, créez un workflow avec une liste de règles qui doivent être vérifiées par des agents vérificateurs — un vérificateur par règle. Créer un sous-agent de personnalité sceptique pour examiner les règles afin de s'assurer qu'elles sont cohérentes aidera à éviter trop de faux positifs.

La direction inverse fonctionne aussi : extrayez vos sessions récentes et les commentaires de revue de code pour les corrections que vous faites constamment, regroupez-les avec des agents parallèles, vérifiez chaque candidat de manière adversarial (cette règle aurait-elle évité une vraie erreur ?), puis distillez les survivants dans un CLAUDE.md.

Investigation des causes racines

Le débogage fonctionne mieux lorsque vous formulez plusieurs hypothèses indépendantes et les testez, mais si vous n'utilisez qu'une seule fenêtre de contexte, Claude peut souffrir d'un biais d'auto-préférence.

Un workflow peut structurellement empêcher cela en démarrant des agents pour générer des hypothèses à partir de preuves disjointes. Par exemple, des agents séparés pour les journaux, les fichiers et les données. Chaque hypothèse peut ensuite faire face à un panel de vérificateurs et de réfutateurs.

Cela ne concerne pas que le code. Les workflows peuvent être utilisés pour les ventes (pourquoi les ventes ont-elles chuté en mars ?), l'ingénierie des données (pourquoi ce pipeline a-t-il échoué ?), ou tout exercice post-mortem.

Tri à grande échelle

Thariq - inline image

Chaque équipe a une file d'attente de support, des rapports de bugs, ou un autre backlog qui ne peut pas être entièrement traité par des humains.

Un workflow de tri classe chaque élément, le déduplique par rapport à ce qui est déjà suivi et agit. Cela peut signifier tenter la correction ou escalader vers un utilisateur humain.

Un modèle utile pour les workflows de tri est la quarantaine. Cela consiste à empêcher les agents qui lisent du contenu public non fiable de prendre des actions à privilèges élevés, ces actions étant effectuées par les agents chargés d'agir sur les informations.

Associez les workflows de tri à /loop pour que Claude fasse cela en continu.

Exploration et goût

Les workflows peuvent être utiles pour explorer différentes approches d'une solution, surtout lorsqu'elle est basée sur le goût, comme le design ou le nommage, et bénéficierait d'une grille d'évaluation.

Essayez de demander à Claude d'explorer un ensemble de solutions, et donnez à un agent de révision une grille de ce à quoi ressemble une bonne solution. La tâche est terminée lorsque l'agent de révision estime que les critères sont remplis. Les solutions peuvent également être ordonnées ou sélectionnées via un tournoi basé sur la grille.

Évaluations

Vous pouvez exécuter des évaluations légères pour des tâches spécifiques en démarrant des agents séparés dans un worktree, puis en démarrant des agents de comparaison pour comparer et noter les sorties spécifiques par rapport à une grille. Par exemple, évaluer puis affiner une compétence que vous avez créée par rapport à des critères particuliers.

Routage de modèle et d'intelligence

Créez un agent classifieur adapté à vos tâches qui décide quel modèle utiliser. Cela peut être utile lorsque votre tâche impliquera de nombreux appels d'outils et que mener des recherches avant l'exécution peut identifier le meilleur modèle pour le travail.

Par exemple, le meilleur modèle pour la tâche « explique comment fonctionne le module d'auth » dépend du nombre de fichiers dans le module d'auth et de la forme de la base de code. Un agent classifieur peut faire cette recherche, puis orienter vers Sonnet ou Opus en fonction de la complexité attendue de la tâche.

Quand ne pas utiliser les workflows dynamiques

Les workflows sont nouveaux. Bien qu'il existe de nombreux cas d'utilisation où ils produiront des résultats exceptionnels, ils ne sont pas nécessaires pour chaque tâche et peuvent utiliser beaucoup plus de tokens.

Il est préférable d'utiliser les workflows de manière créative pour pousser Claude Code dans des directions que vous n'avez pas encore explorées. Pour les tâches de codage classiques, demandez-vous si elle a vraiment besoin de plus de calcul. Par exemple, la plupart des tâches de codage traditionnelles n'ont pas besoin d'un panel de 5 réviseurs.

Conseils pour construire des workflows dynamiques

Rédaction de prompts

Une rédaction détaillée des prompts, utilisant les techniques spécifiques décrites ci-dessus, pour les workflows dynamiques donne les meilleurs résultats.

Les workflows ne sont pas réservés aux grandes tâches. Vous pouvez demander au modèle d'utiliser un « workflow rapide ». Par exemple, vous pouvez créer une revue adversarial rapide d'une hypothèse.

Combiner avec /goal et /loop

Lorsque vous utilisez des workflows qui peuvent être répétés, par exemple le tri, la recherche ou la vérification, associez-les à /loop pour qu'ils soient exécutés à intervalles réguliers, et à /goal pour définir une exigence d'achèvement stricte.

Budgets d'utilisation de tokens

Vous pouvez définir des budgets d'utilisation explicites pour les workflows dynamiques afin de limiter le nombre de tokens qu'une tâche utilise. Vous pouvez le demander avec un budget comme : « utilise 10k tokens », ce qui définira le plafond.

Sauvegarder et partager les workflows dynamiques

Vous pouvez sauvegarder les workflows en appuyant sur « s » dans le menu des workflows. Vous pouvez les enregistrer dans ~/.claude/workflows ou les distribuer via une compétence.

Thariq - inline image

Pour les partager via une compétence, placez vos fichiers JavaScript de workflow dans le dossier de la compétence et référencez-les dans le SKILL.MD. Pour plus de flexibilité, vous pouvez demander à Claude de considérer les workflows de la compétence comme un modèle plutôt que comme un script à exécuter textuellement.

Thariq - inline image

Un tout nouveau monde

Les workflows sont une nouvelle façon utile d'étendre Claude Code. Je vous encourage à considérer cela comme un point de départ, il y a encore beaucoup à découvrir sur la meilleure façon de les utiliser. Faites-nous savoir ce que vous trouvez.

Thariq Shihipar et Sid Bidasaria (@sidbid) sont membres de l'équipe technique d'Anthropic, travaillant sur Claude Code.

https://x.com/jarredsumner/status/2060050578026189172

Enregistrer en un clic

Lire les articles viraux en profondeur avec l’IA de YouMind

Enregistrez la source, posez des questions ciblées, résumez l’argument et transformez un article viral en notes réutilisables dans un seul espace de travail IA.

Découvrir YouMind
Pour les créateurs

Transformez votre Markdown en un article 𝕏 impeccable

Quand vous publiez vos propres textes longs, la mise en forme 𝕏 des images, tableaux et blocs de code est pénible. YouMind transforme un brouillon Markdown complet en un article 𝕏 impeccable, prêt à publier.

Essayer Markdown vers 𝕏

D'autres patterns à décoder

Articles viraux récents

Explorer plus d'articles viraux