Un arnés para cada tarea: flujos de trabajo dinámicos en Claude Code

@trq212
INGLÉShace 1 mes · 02 jun 2026
2.8M
9.6K
1.2K
231
22.5K

TL;DR

Anthropic presenta flujos de trabajo dinámicos para Claude Code, permitiendo que la IA genere arneses de JavaScript personalizados que orquestan subagentes para resolver tareas complejas de varios pasos, evitando al mismo tiempo los errores comunes de la IA.

La semana pasada, lanzamos los flujos de trabajo dinámicos en Claude Code. Claude ahora puede escribir su propio harness sobre la marcha, diseñado a medida para la tarea en cuestión.

Si bien el harness predeterminado de Claude Code está diseñado para codificación, también es útil para muchos otros tipos de tareas porque, resulta que muchas tareas se asemejan a tareas de codificación. Pero hay ciertas clases de tareas para las que hemos tenido que construir harness personalizados sobre Claude Code para alcanzar el máximo rendimiento, como Research, análisis de seguridad, equipos de agentes o Code Review.

Los flujos de trabajo te permiten crear harness dinámicamente, lo que permite a Claude resolver todos esos problemas y más de forma nativa dentro de Claude Code. También puedes compartir y reutilizar estos flujos de trabajo con otras personas.

En este artículo, cubriré mis primeras experiencias y aprendizajes con los flujos de trabajo para que puedas aprovecharlos al máximo.

Dicho esto, ¡las mejores prácticas aún están en desarrollo! Los flujos de trabajo dinámicos suelen usar más tokens, así que piensa cuidadosamente cuándo y cómo usarlos.

Nota: esta publicación también está disponible en el Blog de Claude

Ejemplos de prompts

Antes de profundizar en los detalles técnicos, me gustaría comenzar con algunos ejemplos de prompts para que puedas empezar a pensar en las posibilidades con los flujos de trabajo:

  • "Esta prueba falla tal vez 1 de cada 50 ejecuciones. Configura un flujo de trabajo para reproducirla, formular teorías y probarlas adversarialmente en worktrees /goal no te detengas hasta que una teoría funcione."
  • "Usando un flujo de trabajo, revisa mis últimas 50 sesiones y extrae las correcciones que sigo haciendo, y convierte las recurrentes en reglas de CLAUDE.md"
  • "Usa un flujo de trabajo para buscar en #incidents en Slack de los últimos seis meses y encuentra causas raíz recurrentes donde nadie haya creado un ticket."
  • "Toma mi plan de negocio y ejecuta un flujo de trabajo donde diferentes agentes lo analicen desde la perspectiva de un inversor, un cliente y un competidor."
  • "Aquí hay una carpeta con 80 currículos; usa un flujo de trabajo para ordenarlos según el puesto de backend y verifica dos veces los diez primeros. Entrevístame usando la herramienta AskUserQuestion para una rúbrica."
  • "Necesito un nombre para esta herramienta CLI. Usa un flujo de trabajo para generar muchas opciones y ejecuta un torneo para elegir las 3 mejores."
  • "Usa un flujo de trabajo para renombrar nuestro modelo User a Account en todas partes."
  • "Revisa el borrador de mi publicación de blog y, usando un flujo de trabajo, verifica cada afirmación técnica contra la base de código, no quiero publicar nada incorrecto."

Cómo funcionan los flujos de trabajo dinámicos

Los flujos de trabajo dinámicos ejecutan un archivo JavaScript con algunas funciones especiales que ayudan a crear y coordinar subagentes:

Thariq - inline image

Los flujos de trabajo dinámicos también incluyen funciones estándar de JavaScript como JSON, Math y Array, para ayudar a procesar datos.

Es particularmente útil saber que los flujos de trabajo dinámicos pueden decidir qué modelos usa un agente y si los subagentes se ejecutan en su propio worktree, lo que permite a Claude elegir el nivel de inteligencia y aislamiento necesario.

Si un flujo de trabajo se interrumpe, por ejemplo por una acción del usuario o al cerrar la terminal, reanudar la sesión permitirá que el flujo de trabajo continúe desde donde se quedó.

Por qué flujos de trabajo dinámicos

Cuando le pides al harness predeterminado de Claude Code que realice una tarea, necesita planificar y ejecutar en la misma ventana de contexto. Para muchas tareas de codificación, esto es muy efectivo, pero a veces puede fallar en tareas de larga duración, masivamente paralelas y/o altamente estructuradas y adversariales.

Esto se debe a que cuanto más tiempo trabaja Claude en una tarea compleja en una sola ventana de contexto, más susceptible se vuelve a algunos modos de fallo específicos:

  • Pereza agentiva se refiere a cuando Claude se detiene antes de terminar una tarea particularmente compleja y de múltiples partes, y declara el trabajo como finalizado después de un progreso parcial, por ejemplo, abordando 20 de los 50 elementos en una revisión de seguridad.
  • Sesgo de autopreferencia se refiere a la tendencia de Claude a preferir sus propios resultados o hallazgos, especialmente cuando se le pide verificarlos o juzgarlos contra una rúbrica.
  • Deriva de objetivos se refiere a la pérdida gradual de fidelidad al objetivo original a lo largo de muchos turnos, especialmente después de la compactación. Cada paso de resumen es con pérdida, y detalles como requisitos de casos extremos o restricciones de "no hagas X" pueden perderse.

Crear un flujo de trabajo ayuda a combatir estos problemas orquestando Claudes separados con sus propias ventanas de contexto y objetivos aislados y enfocados.

Flujos de trabajo dinámicos vs. estáticos

Es posible que hayas creado anteriormente un flujo de trabajo estático usando el Claude Agent SDK o claude -p para coordinar múltiples instancias de Claude Code juntas.

Pero debido a que los flujos de trabajo estáticos deben funcionar para todos los casos extremos, suelen ser más genéricos. Con Claude Opus 4.8 y los flujos de trabajo dinámicos, Claude ahora es lo suficientemente inteligente como para escribir un harness personalizado hecho a la medida para tu caso de uso.

Thariq - inline image

Patrones útiles al usar flujos de trabajo dinámicos

Puedes empezar a usar flujos de trabajo dinámicos simplemente pidiéndole a Claude que cree uno, o usando la palabra clave "ultracode" para asegurarte de que Claude Code cree un flujo de trabajo.

Pero construir un modelo mental de cómo funcionan los flujos de trabajo dinámicos te ayudará a entender cuándo usarlos y cómo podrías guiar a Claude mediante prompts.

Hay algunos patrones comunes que Claude podría usar y combinar al construir flujos de trabajo:

Thariq - inline image

Clasificar y actuar

Usa un agente clasificador para decidir el tipo de tarea, y luego dirige a diferentes agentes o comportamientos según la tarea. O usa un clasificador al final para determinar la salida.

Dividir y sintetizar

Divide una tarea en muchos pasos más pequeños, ejecuta un agente en cada paso y luego sintetiza esos resultados. Esto es particularmente útil cuando hay un gran número de pasos pequeños, o cuando cada paso se beneficia de su propia ventana de contexto limpia para que no interfieran ni se contaminen entre sí. El paso de síntesis es una barrera: espera a todos los agentes de división, luego fusiona sus resultados estructurados en un solo resultado.

Verificación adversarial

Para cada agente generado, ejecuta un agente generado separado para verificar adversarialmente su salida contra una rúbrica o criterio.

Generar y filtrar

Genera varias ideas sobre un tema y luego fíltralas mediante una rúbrica o verificación, elimina duplicados y devuelve solo las ideas de mayor calidad y probadas.

Torneo

En lugar de dividir el trabajo, haz que los agentes compitan por él. Genera N agentes que intenten la misma tarea usando diferentes enfoques. Luego, los prompts o modelos juzgan los resultados de forma pareada usando un agente juez hasta que tengas un ganador.

Bucle hasta completar

Para tareas con una cantidad desconocida de trabajo, repite la generación de agentes hasta que se cumpla una condición de parada (sin nuevos hallazgos, o sin más errores en los registros) en lugar de un número fijo de pasadas.

Casos de uso

Piensa creativamente en cuándo y cómo pedirle a Claude Code que cree flujos de trabajo dinámicos. He descubierto que los flujos de trabajo a veces son aún más útiles para trabajos no técnicos.

Thariq - inline image

Migraciones y refactorizaciones

Bun fue reescrito de Zig a Rust usando flujos de trabajo. Puedes leer más sobre cómo se hizo en el hilo de X de Jarred.

La clave es dividir la tarea en una serie de pasos que necesitan ser operados, por ejemplo en sitios de llamadas, pruebas fallidas, módulos, etc. Inicia un subagente para cada corrección en un worktree para hacer la corrección, luego haz que otro agente revise adversarialmente y fusione. Considera decirle al agente que no use comandos que consuman muchos recursos para que puedas paralelizar al máximo sin quedarte sin recursos en tu máquina.

Investigación profunda

Publicamos una habilidad de investigación profunda (/deep-research) dentro de Claude Code que utiliza flujos de trabajo dinámicos. Específicamente, despliega búsquedas web, obtiene fuentes, verifica adversarialmente sus afirmaciones y sintetiza un informe con citas.

Pero puedes hacer este tipo de investigación para más que solo búsquedas web. Por ejemplo, pedirle a Claude que compile un informe de estado desde el contexto en Slack o que investigue cómo funciona una función explorando una base de código en profundidad.

Verificación profunda

Thariq - inline image

Por otro lado, si tienes un informe en el que quieres verificar y referenciar cada afirmación factual que menciona, podrías generar un flujo de trabajo que tenga un agente que identifique todas las afirmaciones factuales y luego inicie un subagente para verificar cada una en detalle. También podrías tener un agente de verificación que revise al subagente de fuentes para asegurarse de que su fuente sea de alta calidad.

Clasificación

Thariq - inline image

Puede que tengas una lista de elementos que deseas ordenar según alguna medición cualitativa que creas que Claude Code es bueno evaluando, por ejemplo: tickets de soporte ordenados por gravedad del error. Pero si intentas ordenar más de 1000 filas en un solo prompt, la calidad se degrada y no cabe en el contexto. En su lugar, ejecuta un torneo, una tubería de agentes de comparación por pares (el juicio comparativo es más confiable que la puntuación absoluta), o clasifica por cubos en paralelo y luego fusiona. Cada comparación es su propio agente, por lo que el bucle determinista mantiene el bracket y solo el orden de ejecución permanece en el contexto.

Memoria y adherencia a reglas

Thariq - inline image

Si tienes un conjunto particular de reglas que Claude tiende a omitir o con las que tiene dificultades, incluso cuando están incluidas en los CLAUDE.md, crea un flujo de trabajo con una lista de reglas que deben ser verificadas por agentes verificadores: un verificador por regla. Crear un subagente con una personalidad escéptica para revisar las reglas y asegurarse de que estén alineadas ayudará a evitar demasiados falsos positivos.

La dirección inversa también funciona: explora tus sesiones recientes y comentarios de revisiones de código en busca de correcciones que sigues haciendo, agrupa con agentes paralelos, verifica adversarialmente cada candidato (¿esta regla habría prevenido un error real?), y luego destila los supervivientes de nuevo en un CLAUDE.md.

Investigación de causa raíz

La depuración funciona mejor cuando planteas varias hipótesis independientes y las pruebas, pero si solo usas una ventana de contexto, Claude puede caer en el sesgo de autopreferencia.

Un flujo de trabajo puede prevenir esto estructuralmente iniciando agentes para generar hipótesis a partir de evidencia separada. Por ejemplo, agentes separados para registros, archivos y datos. Cada hipótesis puede luego enfrentarse a un panel de verificadores y refutadores.

Esto no es solo para código. Los flujos de trabajo se pueden usar para ventas (¿por qué cayeron las ventas en marzo?), ingeniería de datos (¿por qué falló esta tubería?), o cualquier ejercicio de análisis post-mortem.

Triaje a escala

Thariq - inline image

Cada equipo tiene una cola de soporte, informes de errores u otro trabajo pendiente que no puede ser procesado completamente por humanos.

Un flujo de trabajo de triaje clasifica cada elemento, elimina duplicados con lo que ya está registrado, y toma acción. Esto podría significar intentar la corrección o escalar a un usuario humano.

Un patrón útil para los flujos de trabajo de triaje es la cuarentena. Esto implica impedir que los agentes que leen contenido público no confiable tomen acciones de alto privilegio, que en su lugar son realizadas por los agentes encargados de actuar sobre la información.

Combina los flujos de trabajo de triaje con /loop para que Claude lo haga de forma continua.

Exploración y criterio

Los flujos de trabajo pueden ser útiles al explorar diferentes enfoques para una solución, especialmente cuando se basa en el gusto, como diseño o nombres, y se beneficiaría de una rúbrica.

Prueba pedirle a Claude que explore varias soluciones, y proporciona a un agente de revisión una rúbrica de cómo se ve una buena solución. La tarea está completa cuando el agente de revisión siente que ha cumplido con los criterios. Las soluciones también pueden ordenarse o seleccionarse mediante un torneo basado en la rúbrica.

Evaluaciones

Puedes ejecutar evaluaciones ligeras para tareas específicas iniciando agentes separados en un worktree y luego iniciando agentes de comparación para comparar y calificar las salidas específicas contra una rúbrica. Por ejemplo, evaluar y luego refinar una habilidad que hayas creado según un criterio particular.

Enrutamiento de modelos e inteligencia

Crea un agente clasificador ajustado a tus tareas que decida qué modelo usar. Esto puede ser útil cuando tu tarea implique muchas llamadas a herramientas y realizar investigación antes de la ejecución pueda identificar el mejor modelo para el trabajo.

Por ejemplo, el mejor modelo para la tarea "explica cómo funciona el módulo de autenticación" depende de cuántos archivos haya en el módulo de autenticación y de la forma de la base de código. Un agente clasificador puede hacer esta investigación y luego dirigir a Sonnet u Opus según la complejidad esperada de la tarea.

Cuándo no usar flujos de trabajo dinámicos

Los flujos de trabajo son nuevos. Aunque hay muchos casos de uso en los que generarán resultados excepcionales, no son necesarios para cada tarea y pueden terminar usando significativamente más tokens.

Es mejor usar los flujos de trabajo de forma creativa para llevar a Claude Code más allá de lo que has hecho antes. Para tareas de codificación habituales, pregúntate: ¿realmente necesita más cómputo? Por ejemplo, la mayoría de las tareas de codificación tradicionales no necesitan un panel de 5 revisores.

Consejos para construir flujos de trabajo dinámicos

Creación de prompts

Un prompting detallado, usando las técnicas específicas que describimos anteriormente, para flujos de trabajo dinámicos crea los mejores resultados.

Los flujos de trabajo no son solo para tareas grandes. Puedes pedirle al modelo que use un "flujo de trabajo rápido". Por ejemplo, puedes crear una revisión adversarial rápida de una suposición.

Combínalos con /goal y /loop

Cuando uses flujos de trabajo que se pueden repetir, por ejemplo, triaje, investigación o verificación, combínalos con /loop para que se ejecuten a intervalos regulares, y con /goal para establecer un requisito de finalización estricto.

Presupuestos de uso de tokens

Puedes establecer presupuestos explícitos de uso de tokens para los flujos de trabajo dinámicos para limitar cuántos tokens usa una tarea. Puedes indicarlo con un presupuesto como: "usa 10k tokens", lo que establecerá el límite.

Guardar y compartir flujos de trabajo dinámicos

Puedes guardar flujos de trabajo presionando "s" en el menú de flujo de trabajo. Puedes guardarlos en ~/.claude/workflows o distribuirlos a través de un skill.

Thariq - inline image

Para compartirlos mediante un skill, coloca tus archivos JavaScript de flujo de trabajo en el skill y la carpeta, y haz referencia a ellos en el SKILL.MD. Para permitir más flexibilidad, quizás quieras indicarle a Claude que considere los flujos de trabajo en el skill como una plantilla en lugar de un script que debe ejecutarse al pie de la letra.

Thariq - inline image

Un mundo completamente nuevo

Los flujos de trabajo son una nueva forma útil de extender Claude Code. Te animo a que veas esto como un punto de partida; todavía hay mucho por descubrir sobre cómo usarlos mejor. Cuéntanos qué encuentras.

Thariq Shihipar y Sid Bidasaria (@sidbid) son miembros del equipo técnico de Anthropic, trabajando en Claude Code.

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

Guardar con un clic

Lee artículos virales en profundidad con IA en YouMind

Guarda la fuente, haz preguntas concretas, resume el argumento y convierte un artículo viral en notas reutilizables en un único espacio de trabajo con IA.

Explora YouMind
Para creadores

Convierte tu Markdown en un artículo de 𝕏 impecable

Cuando publicas tus propios textos largos, dar formato en 𝕏 a imágenes, tablas y bloques de código es un fastidio. YouMind convierte un borrador completo en Markdown en un artículo de 𝕏 impecable y listo para publicar.

Prueba Markdown a 𝕏

Más patrones por descifrar

Artículos virales recientes

Explorar más artículos virales