Agent Mentor Learn
Diseñar flujos de trabajo de agentes: de la conversación puntual a la automatización de varios pasos · Lección 6 de 6

Lección 6: Flujos de trabajo del mundo real en la práctica

Objetivos de aprendizaje:

  • Combinar descomposición de tareas, gestión de estado y manejo de errores para diseñar flujos de trabajo completos
  • Entender los patrones de flujo de trabajo detrás de tres escenarios de nivel producción
  • Dominar las técnicas de observabilidad y depuración de flujos de trabajo

Requisitos: Lección 5: Manejo de errores y estrategias de reintento

De la teoría a la práctica

A lo largo de las primeras cinco lecciones cubrimos las piezas con las que se arma un flujo de trabajo: pasos, estado, descomposición y manejo de errores. Ahora las vamos a juntar y construir tres flujos de trabajo de nivel producción sacados de escenarios reales.

Los tres flujos de trabajo de esta lección:

  1. Pipeline de refactorización de código: refactorizar código heredado hacia patrones modernos, cubriendo análisis, planificación, ejecución, pruebas y verificación
  2. Pipeline de generación de documentación: generar automáticamente documentación de API a partir del código, cubriendo extracción, generación de ejemplos, renderizado y publicación
  3. Flujo de automatización de pruebas: un flujo de trabajo de pruebas de punta a punta, cubriendo preparación del entorno, pruebas en paralelo, agregación de resultados y generación del reporte

Cada flujo de trabajo muestra:

  • Una descomposición completa de la tarea
  • El diseño de la gestión de estado y de los puntos de control
  • Estrategias de manejo de errores y de recuperación
  • Soporte para observabilidad y depuración1

Escenario 1: pipeline de refactorización de código

Requisitos

Refactorizar un proyecto de frontend heredado de 50 componentes, pasándolos de componentes de clase a componentes de función + Hooks.

Desafíos:

  • Los componentes dependen unos de otros, así que no puedes refactorizarlos en un orden arbitrario
  • La refactorización puede romper el comportamiento, así que necesita verificación con pruebas
  • 50 componentes no se pueden terminar en una sola conversación; necesitan procesamiento en paralelo2

Descomposición de la tarea

El flujo de trabajo tiene 6 fases. Las dos primeras pueden procesar componentes en paralelo; las fases posteriores corren en orden de dependencia.

mermaid
graph TD    A[Fase 1: Análisis de dependencias] --> B{¿Se puede paralelizar?}    B -->|Sí| C[Analizar componentes 1-25]    B -->|Sí| D[Analizar componentes 26-50]    C --> E[Fase 2: Generar el plan de refactorización]    D --> E    E --> F[Fase 3: Refactorizar por lotes]    F --> G[Lote 1: Componentes hoja]    F --> H[Lote 2: Componentes intermedios]    F --> I[Lote 3: Componentes raíz]    G --> J[Fase 4: Correr la suite de pruebas]    H --> J    I --> J    J --> K{¿Pasan las pruebas?}    K -->|Sí| L[Fase 5: Generar el reporte]    K -->|No| M[Fase 6: Arreglar los componentes fallidos]    M --> J    L --> N[Fin]

Implementación completa

Puntos clave del diseño

1. Estrategia de puntos de control: guardar cuando termina cada lote, para no volver a refactorizar trabajo ya hecho

2. Ejecución en paralelo: los componentes del mismo lote se pueden refactorizar en paralelo (no dependen entre sí)

3. Mecanismo de reintento: que un componente falle no afecta a los demás; usa Promise.allSettled para recolectar todos los resultados

4. Ciclo de arreglo: ante una falla de pruebas, intenta arreglar automáticamente, hasta 3 veces

5. Observabilidad: cada fase deja registros claros y el estado se persiste en almacenamiento externo3

Escenario 2: pipeline de generación de documentación

Requisitos

Generar documentación de API completa para un servicio con 30 endpoints REST, incluyendo descripciones de los endpoints, ejemplos de petición y respuesta, y explicaciones de los códigos de error.

Descomposición de la tarea (patrón fan-out/agregación)

Características clave:

  • Patrón fan-out/agregación: 30 endpoints generan su documentación en paralelo y al final se agrega todo
  • Sin estado: la tarea es lo bastante rápida (< 10 minutos) como para no necesitar puntos de control
  • Idempotente: puedes volver a correrlo cuando quieras y sobrescribir el archivo de salida1

Escenario 3: flujo de automatización de pruebas

Requisitos

Correr pruebas de punta a punta en varios entornos (local, staging, producción), recolectar los resultados de las pruebas y las métricas de rendimiento, y generar un reporte comparativo.

Implementación completa

Características clave:

  • Pruebas en paralelo: varios entornos corren sus pruebas al mismo tiempo, lo que recorta muchísimo el tiempo total
  • Tolerancia a fallas: que un entorno falle no afecta a los demás
  • Reintento inteligente: las pruebas fallidas se reintentan automáticamente (los tropiezos de red y las fallas transitorias son comunes)
  • Análisis de fallas: las sugerencias de arreglo para las fallas se generan automáticamente1

Observabilidad del flujo de trabajo

Un buen flujo de trabajo debería poder responder, en cualquier momento:

  • ¿Qué tan avanzado está? (X/Y listos)
  • ¿Cuánto más va a tardar, probablemente?
  • ¿Con qué errores se topó?
  • ¿Dónde están los cuellos de botella de rendimiento?

Si no puedes responder esto, tus registros y tu seguimiento del estado no son lo bastante detallados. Depurar un flujo de trabajo se monta sobre esos registros, no sobre adivinar.

Implementar la observabilidad

Ese pedacito dentro de summary() que ordena por duración e imprime solo los tres pasos más lentos es la forma más simple de perfilado de rendimiento: mide cuánto tardó cada paso y después encuentra el cuello de botella a partir de los datos, en lugar de adivinar qué paso es lento.


Felicidades por terminar el curso de Diseño de flujos de trabajo con agentes.

Ahora manejas:

  • Los conceptos centrales de los flujos de trabajo y dónde encajan
  • Las tres estrategias de descomposición de tareas
  • La gestión de estado y el mecanismo de puntos de control
  • El manejo de errores y las estrategias de reintento
  • Tres flujos de trabajo de nivel producción salidos de escenarios reales

Próximos pasos:

  1. Practica un flujo de trabajo simple (< 5 pasos) en alguno de tus proyectos
  2. Agrega complejidad paso a paso (paralelismo, puntos de control, manejo de errores)
  3. Comparte tu diseño de flujo de trabajo y recibe comentarios de la comunidad
  4. Explora temas más avanzados (flujos de trabajo distribuidos, frameworks de orquestación de flujos de trabajo, editores visuales de flujos de trabajo)

Footnotes

  1. ClaudFlow: 7 Patterns for Claude Code Workflow Automation — https://claudflow.com/guides/claude-code-workflow-automation.html 2 3

  2. Kinde: Multi-Agent Workflows for Complex Refactoring — https://www.kinde.com/learn/ai-for-software-engineering/ai-agents/multi-agent-workflows-for-complex-refactoring-orchestrating-ai-teams/

  3. Artículo RefAgent: A Multi-Agent LLM Framework for Automated Software Refactoring — https://arxiv.org/html/2511.03153v1

Ejercicios

01

Elige una tarea real de tu propio trabajo y diseña un flujo de trabajo completo para ella.

Nivel 1: Diseñar tu propio flujo de trabajo

Requisitos:

  1. Describe la tarea (2-3 oraciones)
  2. Dibuja el diagrama del flujo de trabajo (fases, bifurcaciones, pasos en paralelo)
  3. Enumera los campos del estado (al menos 5)
  4. Explica dónde pondrías los puntos de control
  5. Enumera los errores posibles y cómo los manejarías
Criterios de finalización · marcado local
02

Un flujo de trabajo de «procesamiento de imágenes por lotes» falla en la imagen 47, con el mensaje de error Error: EMFILE: too many open files.

Nivel 2: Depurar un flujo de trabajo que falla

Preguntas:

  1. ¿Qué tipo de error es este (transitorio/permanente)?
  2. ¿Por qué falla en la imagen 47 y no en la primera?
  3. ¿Cómo deberías arreglar el flujo de trabajo? (Da sugerencias de cambios en el código.)
Criterios de finalización · marcado local