Workflows de IA en producción

Lleva workflows de IA de desarrollo a producción sin compartir entornos.

Ejecuta desarrollo, staging y producción en instancias Dagu separadas. Promueve mediante Git solo las definiciones revisadas, mientras cada instancia conserva sus propias credenciales, workers, historial, política de acceso y rutas de incidentes.

agent-workflow.yaml
name: release-review

steps:
  - id: collect_context
    run: ./scripts/collect-context.sh
    output: CONTEXT

  - id: draft
    action: harness.run
    with:
      provider: codex
      prompt: |
        Review this release:
        ${steps.collect_context.outputs.CONTEXT}
    retry_policy:
      limit: 2
    approval:
      prompt: Review the agent output before release
      rewind_to: collect_context
    depends: [collect_context]

  - id: publish
    run: ./scripts/publish.sh
    depends: [draft]

Una instancia Dagu separada por entorno

Promoción de workflows revisada en Git

Aprobaciones, reintentos, logs, métricas y trazas

Slack, PagerDuty y recuperación MCP autenticada

Arquitectura de entornos

Git promueve las definiciones. Las instancias separadas aportan aislamiento.

Un workspace de desarrollo dentro de un servidor compartido no es una frontera de producción. Asigna a cada entorno su propio servidor Dagu, almacenamiento, credenciales, workers y acceso de red. Configura Git Sync en cada instancia para seguir la rama aprobada para ese entorno.

01

Desarrollo

rama development

Crea, ejecuta, depura y publica cambios con servicios y credenciales de desarrollo.

Publicación habilitada

Promover mediante pull request
02

Staging

rama staging

Descarga definiciones revisadas en una instancia aislada y valídalas frente a dependencias de staging.

Git Sync de solo lectura

Promover mediante pull request
03

Producción

rama main protegida

Ejecuta únicamente revisiones promovidas con credenciales, políticas, telemetría y rutas de incidentes exclusivas de producción.

Git Sync de solo lectura

Controles de producción

Rodea el trabajo no determinista con controles deterministas.

El modelo o runtime del agente puede cambiar sin modificar el contrato operativo. Dagu mantiene explícito, revisable y recuperable el camino de ejecución que lo rodea.

Versiona el workflow

Guarda definiciones DAG y skills de autoría en Git, revisa los diffs y promueve una revisión conocida entre entornos.

Controla los efectos

Pausa tras la salida del agente, recoge la revisión y aprueba, rechaza o devuelve el workflow antes de una acción en producción.

Limita los fallos

Usa dependencias, timeouts, reintentos limitados, colas y controles de concurrencia en vez de lógica de prompts sin límites.

Valida la salida

Ejecuta pruebas deterministas, controles de políticas o evaluaciones externas como pasos normales antes de aprobar o publicar.

Observa la ejecución

Inspecciona historial, logs y artefactos; exporta métricas a Prometheus y trazas de DAG/pasos mediante OpenTelemetry.

Controla la recuperación

Notifica a operaciones, abre incidentes tras agotar los reintentos y permite que clientes MCP autorizados investiguen y recuperen ejecuciones.

Promoción basada en Git

Haz que producción consuma Git, no ediciones locales.

Desarrollo puede publicar cambios. Staging y producción deberían usar normalmente `push_enabled: false`, seguir ramas protegidas y descargar únicamente definiciones revisadas. El pull automático es útil en staging; producción puede seguir automáticamente una rama protegida o hacer un pull controlado tras aprobar el despliegue.

Git Sync realiza seguimiento de archivos DAG y skills de autoría. Los secretos, la configuración del servidor, el almacenamiento, el historial de ejecuciones, los workers y el acceso de red permanecen locales en cada instancia Dagu.

config.yaml de producción
git_sync:
  enabled: true
  repository: github.com/acme/ai-workflows
  branch: main
  push_enabled: false

  auth:
    type: token
    token: ${GITHUB_TOKEN}

  auto_sync:
    enabled: true
    on_startup: true
    interval: 300

Fallo y recuperación

Convierte el fallo de un agente en un proceso operativo.

Dagu separa las notificaciones ordinarias del ciclo de vida de incidentes y expone operaciones autenticadas del workflow a clientes MCP.

  1. 01

    Un workflow o paso de agente falla y ejecuta sus reintentos configurados.

  2. 02

    Tras agotar los reintentos, Dagu envía el fallo final a las rutas de Slack configuradas.

  3. 03

    El enrutamiento de PagerDuty puede abrir o actualizar un único incidente deduplicado para el workflow fallido.

  4. 04

    Un cliente MCP autorizado lee la ejecución y los logs, previsualiza un cambio de DAG y reintenta o detiene la ejecución con las herramientas de Dagu.

  5. 05

    Una ejecución posterior correcta resuelve el incidente abierto mientras la ruta del proveedor siga siendo identificable.

Límites precisos

Qué proporciona Dagu y qué pertenece a otra capa.

Dagu es la capa de control del workflow alrededor de un sistema de IA. Unos límites claros hacen la arquitectura más segura y la afirmación de producción más útil.

Dagu proporcionaLímite
Separación de entornosServidores, almacenamiento, credenciales, workers, políticas de acceso y configuración de incidentes independientes, con Git Sync para las definiciones.Los workspaces y runtime profiles dentro de una instancia no sustituyen un aislamiento fuerte de entornos.
Observabilidad del workflowEstado de ejecuciones y pasos, logs, artefactos, historial, métricas Prometheus y trazas OpenTelemetry de DAG/pasos.Las trazas de prompts, tokens, costes y calidad semántica deben ser emitidas o medidas por el agente o la pila de evaluación.
Evaluación y guardrailsUn grafo para validadores deterministas, evaluaciones externas, aprobaciones y reintentos acotados.Dagu no decide si una respuesta del LLM es objetivamente correcta o segura para un dominio concreto.
Seguridad e incidentesOperaciones autenticadas, API keys con alcance, notificaciones, controles MCP y rutas hacia proveedores de incidentes.El audit logging y las integraciones de incidentes self-hosted requieren licencia o prueba activa; Dagu administrado los incluye.

Preguntas frecuentes

Preguntas prácticas antes de producción

¿Deben desarrollo, staging y producción compartir un servidor Dagu?

No cuando el aislamiento importa. Ejecuta instancias separadas para que credenciales, almacenamiento, workers, red, logs y políticas no compartan una frontera operativa. Promueve las definiciones con Git Sync.

¿Git Sync copia secretos de producción o el historial de ejecuciones?

No. Git Sync alinea archivos DAG y skills de autoría con un repositorio. Los secretos, la configuración, el almacenamiento, el historial y los workers permanecen locales en cada instancia.

¿Puede Dagu medir si la respuesta de un agente es correcta?

No por sí solo. Dagu puede ejecutar pruebas deterministas o herramientas de evaluación como pasos y condicionar la siguiente acción a su resultado, pero la lógica de evaluación pertenece a esas herramientas y a los revisores del dominio.

¿Qué puede hacer un cliente MCP durante un incidente?

Según la autenticación y autorización de Dagu, puede inspeccionar DAGs, ejecuciones y logs; previsualizar o aplicar cambios validados; e iniciar, encolar, reintentar, detener o seguir ejecuciones.

Siguiente paso

Lleva primero un workflow de agente a producción.

Coloca un comando de agente existente en un DAG de Dagu, valida su salida, añade una frontera de aprobación y promueve la misma definición revisada por instancias aisladas de desarrollo, staging y producción.