--- id: TheBeardedBearSAS/claude-craft/dynamic-workflows version: "c5bcf7c4" license: MIT install: manual updated: 2026-07-27 --- # dynamic-workflows — Dynamic-workflows is a comprehensive orchestration framework that enables teams to coordinate multiple specialized agents across diverse technology stacks. Built for Claude Code adoption at scale, it combines sprint-based workflows, automated browser testing, and intelligent code review systems to streamline development cycles and reduce rework. Publisher: TheBeardedBearSAS · Stars: 99 · Updated: 2026-07-27 Install (manual): `git clone https://github.com/TheBeardedBearSAS/claude-craft` ## 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 | Palier | Outil | Concurrence | Quand | |--------|-------|-------------|-------| | 1 | **Sub-agent simple** (Task/Agent) | 1 | Une investigation isolée, garder le contexte principal propre | | 2 | **Agent Teams** (`/team:audit`, `/team:sprint`, `/team:security`) | 1 leader + ~3 workers | Travail parallèle borné, synchrone, qui tient en un round | | 3 | **Dynamic 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) ```js 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 4.8) — 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](https://code.claude.com/docs/en/workflows) · voir aussi > `@.claude/commands/common/sub-agents-patterns.md` (tableau comparatif des orchestrations). [View on SkillFed](https://skillfed.io/TheBeardedBearSAS/claude-craft/dynamic-workflows) · [View on GitHub](https://github.com/TheBeardedBearSAS/claude-craft)