Desarrollo
rama development
Crea, ejecuta, depura y publica cambios con servicios y credenciales de desarrollo.
Publicación habilitada
Workflows de IA en producción
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.
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
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.
rama development
Crea, ejecuta, depura y publica cambios con servicios y credenciales de desarrollo.
Publicación habilitada
rama staging
Descarga definiciones revisadas en una instancia aislada y valídalas frente a dependencias de staging.
Git Sync de solo lectura
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
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.
Guarda definiciones DAG y skills de autoría en Git, revisa los diffs y promueve una revisión conocida entre entornos.
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.
Usa dependencias, timeouts, reintentos limitados, colas y controles de concurrencia en vez de lógica de prompts sin límites.
Ejecuta pruebas deterministas, controles de políticas o evaluaciones externas como pasos normales antes de aprobar o publicar.
Inspecciona historial, logs y artefactos; exporta métricas a Prometheus y trazas de DAG/pasos mediante OpenTelemetry.
Notifica a operaciones, abre incidentes tras agotar los reintentos y permite que clientes MCP autorizados investiguen y recuperen ejecuciones.
Promoción basada en Git
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.
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
Dagu separa las notificaciones ordinarias del ciclo de vida de incidentes y expone operaciones autenticadas del workflow a clientes MCP.
Un workflow o paso de agente falla y ejecuta sus reintentos configurados.
Tras agotar los reintentos, Dagu envía el fallo final a las rutas de Slack configuradas.
El enrutamiento de PagerDuty puede abrir o actualizar un único incidente deduplicado para el workflow fallido.
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.
Una ejecución posterior correcta resuelve el incidente abierto mientras la ruta del proveedor siga siendo identificable.
Límites precisos
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 proporciona | Límite | |
|---|---|---|
| Separación de entornos | Servidores, 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 workflow | Estado 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 guardrails | Un 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 incidentes | Operaciones 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
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.
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.
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.
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
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.