agentleFS
TheBeardedBearSASTheBeardedBearSAS/claude-craft/.claude/skills/dynamic-workflows/SKILL.md

dynamic-workflows

Skill108 starsChanged 17 days agoMITView on GitHub

Orchestrate dozens-to-hundreds of subagents from a script Claude writes (Claude Code Dynamic Workflows, trigger `ultracode`). Use when a task exceeds a single agent's context or needs more than ~4 concurrent workers — large audits, migrations, multi-source research, fan-out reviews. Distinct from Agent Teams (synchronous, ≤4 workers) and ralph-run (sequential single-context loop).

5 other projects use a version of this.

Adopted by

Most recently taken up by

The file

Files
SKILL.md

Dynamic Workflows — orchestration multi-agents scriptée

Dynamic Workflows (Claude Code 2.1.154+, mot-clé déclencheur ultracode) laissent Claude écrire un script JavaScript qui orchestre des sous-agents de façon déterministe (boucles, conditions, fan-out). Le script tourne en arrière-plan ; on suit l'exécution via /workflows.

⚠️ Opt-in coûteux : un workflow peut lancer des dizaines à centaines de sous-agents. Ne l'utiliser que sur demande explicite (mot « ultracode », « use a workflow », « fan out agents ») ou quand le palier de complexité ci-dessous est franchi.

Quand l'utiliser — les 3 paliers d'orchestration

PalierOutilConcurrenceQuand
1Sub-agent simple (Task/Agent)1Une investigation isolée, garder le contexte principal propre
2Agent Teams (/team:audit, /team:delivery, /team:security)1 leader + ~3 workersTravail parallèle borné, synchrone, qui tient en un round
3Dynamic Workflows (ultracode)jusqu'à ~1000 sous-agents (cap concurrent ~16)La tâche dépasse le contexte d'un agent OU exige >4 workers OU une boucle/pipeline déterministe

Heuristique break-even : dès que tu écrirais « lance N agents, puis pour chacun fais X, puis agrège » — c'est un workflow. Si N ≤ 4 et une seule passe suffit, reste sur Agent Teams.

Patterns composables (prompts minimaux)

  • Fan-out & synthesize — N lecteurs en parallèle sur des sous-systèmes disjoints → un agent synthétise. (audit, cartographie de code)
  • Adversarial verification — chaque finding passé à ≥1 sceptique chargé de le réfuter ; ne garder que les CONFIRMED. Le pattern qualité le plus important pour la génération autonome.
  • Generate-and-filter — générer large (idées, candidats), puis filtrer par un juge.
  • Classify-and-act — un classifieur route chaque item vers le traitement adapté.
  • Pipeline — chaque item traverse toutes les étapes sans barrière (latence = pire chaîne, pas somme des étapes). C'est le défaut multi-étapes.
  • Loop-until-done / loop-until-dry — relancer des chercheurs jusqu'à K rounds sans nouveauté (découverte de taille inconnue : bugs, edge cases).

Squelette type (review → verify)

const results = await pipeline(
  DIMENSIONS,
  d => agent(d.prompt, { phase: 'Review', schema: FINDINGS }),
  review => parallel(review.findings.map(f => () =>
    agent(`Adversarially verify: ${f.title}. Default refuted=true if unsure.`,
          { phase: 'Verify', schema: VERDICT }).then(v => ({ ...f, verdict: v }))))
)
const confirmed = results.flat().filter(Boolean).filter(f => f.verdict?.isReal)

pipeline() par défaut (pas de barrière) ; parallel() seulement quand l'étape N a besoin de TOUS les résultats de N-1 (dédup, early-exit, comparaison croisée). schema force une sortie structurée validée. Pour des éditions concurrentes de fichiers, isolation: 'worktree'.

Monitoring

  • /workflows : progression live (phases, agents, tokens).
  • Le script revient avec un résultat agrégé ; lire ce résultat, décider la suite (souvent plusieurs workflows en séquence : comprendre → concevoir → implémenter → revoir).

À ne pas confondre

  • ralph-run (/common:ralph-run) : boucle séquentielle mono-contexte jusqu'à une DoD — pas de parallélisme. Pour une tâche qui dépasse ce modèle, basculer sur un Dynamic Workflow.
  • /effort ultracode : palier d'effort CLI (débit code max sur Opus 5.5) — orthogonal au déclencheur ultracode des workflows, même si souvent utilisés ensemble.

Réutilisation & garde-fous (v2.1.166+)

  • Essayer d'abord le workflow intégré /deep-research (recherche multi-sources vérifiée) avant d'en écrire un : beaucoup de besoins « fan-out web + synthèse » y sont déjà couverts.
  • Sauvegarder un run éprouvé : dans /workflows, presser s enregistre le script comme commande réutilisable — projet (.claude/workflows/) ou perso (~/.claude/workflows/). Un paramètre args permet de le rejouer avec une entrée différente (question de recherche, chemin cible…).
  • ⚠️ Sécurité — acceptEdits implicite : les sous-agents lancés par un workflow tournent toujours en mode acceptEdits et héritent de ton allowlist, quel que soit le mode de la session (y compris plan ou default). Les éditions de fichiers sont auto-approuvées. Ne fan-out des agents qui écrivent qu'en zone maîtrisée (worktree isolé, cf. règle 11 sur l'hygiène des permissions).
  • Coupe-circuit & coût : disableWorkflows (settings.json) ou CLAUDE_CODE_DISABLE_WORKFLOWS=1 désactivent la fonctionnalité ; /workflows affiche la consommation de tokens en direct (un workflow coûte significativement plus qu'un contexte unique — piloter avec un budget explicite).

Référence : Claude Code Workflows · voir aussi le skill sub-agents-patterns (.claude/skills/sub-agents-patterns/SKILL.md) (tableau comparatif des orchestrations).

Download now (ZIP)

Does it work?

Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.

No reviews yet

People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.

  • It worked
  • Partly
  • It didn't
What did you use it for? e.g. Reviewing pull requests in a Rails app

Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.

Your trail

Files you open will collect here, so you can find them again.

Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.

Now do this for your own.

Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.