Dynamic workflows en Claude Code, tu primer script multiagente orquestado
Qué son los dynamic workflows, cuándo usarlos en vez de subagents, y cómo iniciar, observar, guardar y mantener bajo control tu primer workflow en una sola sesión.
Desde la salida de Opus 4.8, Claude Code puede hacer algo que antes faltaba. Describes una tarea grande, y Claude no solo te escribe la respuesta sino un script de JavaScript que orquesta en segundo plano docenas de subagents. Eso se llama dynamic workflows, está disponible desde la versión 2.1.154 y sigue en research preview. Te enseño en 20 minutos cómo lanzar tu primer workflow sin que te explote la factura de tokens. Lo montamos con cuidado, primero el workflow integrado para mirar, después uno propio.
Paso 1, comprobar los requisitos
Los dynamic workflows necesitan Claude Code v2.1.154 o superior. Escribe claude --version en tu terminal y míralo. Si vas por debajo, actualiza primero, si no todo el mecanismo ni siquiera aparece.
Los workflows están disponibles en todos los planes de pago, vía la API de Anthropic y en Amazon Bedrock, Google Cloud Vertex AI y Microsoft Foundry. Si estás en el plan Pro no están activados automáticamente. Los enciendes con la línea "Dynamic workflows" en /config. En Max y en los planes mayores funcionan directamente.
Tómate en serio esta comprobación. En mi primer intento estuve diez minutos buscando por qué la palabra clave no hacía nada, y era sencillamente una versión antigua.
Paso 2, entender cuándo un workflow es la herramienta correcta
Claude Code tiene cuatro maneras de resolver una tarea de varios pasos. Subagents, skills, agent teams y workflows. La diferencia es solo una, quién sostiene el plan.
Con subagents, skills y agent teams el director es Claude. Decide paso a paso qué pasa después, y cada resultado intermedio aterriza en su ventana de contexto. Un workflow traslada el plan al código. El script sostiene el bucle, las ramificaciones y los resultados intermedios por su cuenta, y en el contexto de Claude solo aterriza la respuesta final.
Echa mano de un workflow cuando una tarea necesita más agentes de los que puede coordinar una sola conversación. Un barrido de bugs por todo el repo. Una migración sobre 500 ficheros. Una pregunta de investigación en la que hay que contrastar fuentes entre sí. O un plan difícil que quieres diseñado desde varios ángulos independientes antes de comprometerte. Para tres tareas delegadas por turno te quedas con subagents, para eso un workflow es pasarse.
Paso 3, lanzar primero el workflow integrado /deep-research
Antes de construir nada tuyo, mira cómo se siente un workflow. Claude Code trae /deep-research como workflow listo. Abre búsquedas web en abanico desde varios ángulos, recoge y contrasta las fuentes entre sí, vota cada afirmación y al final te devuelve un informe con citas.
/deep-research What changed in the Node.js permission model between v20 and v22?
Claude Code te pregunta ahora si puede ejecutar el workflow. Elige Yes. La tirada arranca en segundo plano, tu sesión queda libre. No tienes que esperar de brazos cruzados, puedes seguir trabajando mientras los agentes corren por detrás. Ojo con una cosa: /deep-research necesita la herramienta WebSearch, si no, no tiene fuentes.
Paso 4, mirar la tirada con /workflows
Escribe /workflows y ves todos los workflows en marcha y terminados. Flechas para elegir, enter para entrar.
/workflows
La vista de progreso te enseña cada fase con número de agentes, suma de tokens y tiempo transcurrido. Puedes profundizar en una fase con enter y ver qué encontró cada agente. Las teclas más importantes están en el pie, unas cuantas merece la pena recordarlas. p pausa o reanuda la tirada. x para un agente concreto, o el workflow entero si el foco está en la tirada. r reinicia un agente colgado. s guarda el script de la tirada como comando propio, a eso llegamos enseguida.
Paso 5, dejar que Claude escriba un workflow para tu tarea
Ahora tu propio workflow. La forma más simple: metes la palabra clave ultracode en tu prompt. Entonces Claude escribe un script para la tarea en vez de irla resolviendo paso a paso.
ultracode: audit every API endpoint under src/routes/ for missing auth checks
Claude Code resalta la palabra clave en tu entrada y se pone en marcha. Con tus propias palabras también vale, "use a workflow" o "run a workflow" lo trata Claude como el mismo consentimiento. Un apunte de versiones: antes de la v2.1.160 la palabra clave literal era workflow, las peticiones en lenguaje natural funcionan en ambas versiones. Si has escrito la palabra clave sin querer, pulsa option y W en Mac o alt y W en Windows y Linux, y el resaltado desaparece para ese prompt.
Quien quiera trabajar de forma permanente en modo workflow, pone /effort ultracode. Eso combina razonamiento xhigh con orquestación automática, Claude planifica entonces por su cuenta un workflow para cada tarea grande de la sesión. Pero come bastantes más tokens y tarda más. Yo vuelvo a bajar con /effort high en cuanto estoy otra vez en trabajo de rutina.
Paso 6, dar el visto bueno al plan antes de que corra
En la CLI, Claude te enseña antes de cada tirada las fases previstas y algunas opciones. Yes arranca. Yes y no volver a preguntar recuerda tu consentimiento para exactamente ese workflow en ese proyecto. View raw script te enseña el script antes de decidir, Ctrl+G lo abre directamente en tu editor. Con tab todavía puedes ajustar el prompt antes de empezar.
Lee el script de verdad la primera vez. Un workflow es código que ha escrito Claude, y quieres ver qué va a pasar por tus ficheros antes de que lo haga. Por cierto, los subagents que genera un workflow corren siempre en modo acceptEdits y heredan tu lista de herramientas permitidas, independientemente del modo de tu sesión. O sea que las ediciones de ficheros se aprueban solas. Los comandos de shell, los fetch web y las herramientas MCP que no estén en tu lista sí pueden preguntarte en mitad de la tirada.
Paso 7, conocer los límites
Los workflows tienen límites duros, y menos mal. No hay entrada a mitad de tirada, solo los avisos de permisos de los agentes pueden pausarla. Si quieres dar el visto bueno entre dos etapas, construye cada etapa como workflow propio. El script en sí no tiene acceso directo al sistema de ficheros ni a la shell, eso lo hacen los agentes, el script solo los coordina.
Y dos cifras que conviene tener en la cabeza. Corren hasta 16 agentes a la vez, menos en máquinas con pocos núcleos de CPU. Y por tirada se permiten como máximo 1000 agentes, eso evita bucles infinitos. Si tu workflow choca con ese muro, probablemente la tarea estaba mal recortada.
Paso 8, mantener el coste bajo
Un workflow genera muchos agentes, una sola tirada puede comer bastantes más tokens que la misma tarea en una conversación normal. Las tiradas cuentan con toda normalidad contra el cupo de tu plan y contra tus rate limits.
Mi truco estándar: primero pruebo sobre una porción pequeña. Un directorio en vez del repo entero. Una pregunta estrecha en vez de una amplia. En la vista /workflows ves el consumo de tokens de cada agente mientras corre la tirada, y puedes abortar en cualquier momento con x sin perder el trabajo ya hecho. Si para lo rutinario sueles cambiar a un modelo más pequeño, mira /model antes de una tirada grande. También le puedes decir a Claude que use un modelo más pequeño para las etapas sencillas.
Paso 9, guardar el workflow como comando reutilizable
Cuando Claude ha escrito un workflow para una tarea que repites, merece la pena guardarlo. Una revisión que pasas en cada rama corre después cada vez con la misma orquestación.
Escribe /workflows, elige la tirada que quieres conservar y pulsa s. En el diálogo de guardado cambias con tab entre dos sitios. .claude/workflows/ dentro del proyecto lo compartes con todos los que clonen el repo. ~/.claude/workflows/ en tu directorio personal está en cualquier proyecto, pero solo lo ves tú. Enter guarda. A partir de ahí el workflow corre como /<nombre> en sesiones futuras.
Un workflow guardado puede aceptar entrada mediante el parámetro args. El script lo lee como una variable global llamada args. Así le metes una pregunta de investigación, una lista de rutas o un objeto de configuración sin tocar el script cada vez.
> Run /triage-issues on issues 1024, 1025, and 1030
Claude pasa la lista como datos estructurados, así que el script puede llamar directamente a métodos de array y de objeto sobre args.
Paso 10, apagarlos otra vez si hace falta
Los workflows no son para cada día. Si la orquestación automática te estorba, la apagas con el interruptor "Dynamic workflows" en /config, y eso aguanta entre sesiones. Como alternativa pones "disableWorkflows": true en ~/.claude/settings.json o la variable de entorno CLAUDE_CODE_DISABLE_WORKFLOWS=1. Para todo un equipo eso va por los managed settings.
Con esto tienes el círculo completo. Conoces el /deep-research integrado, dejas que Claude escriba workflows propios, mantienes a raya costes y límites, y guardas lo que se repite. Si a continuación quieres entender cómo funcionan los subagents que orquesta un workflow, sigue con el playbook Estructurar un equipo de subagents y la lección Research, critic, analyst. Para la mirada más amplia sobre costes encaja Controles de coste de Claude Code para el daily driver.
Source
Todos los comandos, números de versión y límites de este playbook vienen de la documentación oficial de Claude Code, a junio de 2026. La fuente principal es la página Orchestrate subagents at scale with dynamic workflows. La salida de Opus 4.8 y la versión v2.1.154 están en las notas de versión de Claude Code. Como los dynamic workflows corren en research preview, algunas asignaciones de teclas y valores por defecto todavía pueden cambiar, en caso de duda consulta la documentación enlazada.