Cliente MCP
Solicita una operación aprobada sin recibir credenciales privadas.
Dagu es una alternativa ligera a Airflow o Cron con una interfaz web. Define DAGs en un formato YAML declarativo simple. Admite comandos de shell, contenedores Docker, trabajos de k8s, comandos remotos vía SSH y más. Fue diseñado para ser fácil de usar, autocontenido y no requerir programación, lo que lo hace ideal para equipos pequeños. Creado para desarrolladores que quieren una orquestación de flujos de trabajo potente sin la sobrecarga operacional.
Los workflows son basados en archivos. Un binario, sin base de datos ni broker externos. Listo para entornos air-gapped.
Scripts shell, trabajos Python, SQL, dbt, DuckDB, contenedores y runbooks se ejecutan como pasos de pipeline sin cambios. No hace falta un nuevo framework.
Define workflows en un formato YAML simple y declarativo. Puedes usar cualquier script o herramienta existente sin modificarla.
Usa clientes compatibles con MCP para crear, mejorar, depurar y ejecutar workflows, y ejecuta pasos Agent Harness dentro de workflows. Los secretos se inyectan en tiempo de ejecución y se enmascaran en logs; no se pasan al cliente MCP. Cada acción queda registrada para cumplimiento.
Configurar vía MCP →Trusted by developers at
Los clientes compatibles con MCP y autorizados pueden inspeccionar y solicitar operaciones de DAG mediante Dagu. Los sistemas privados quedan detrás de un límite de seguridad: Dagu inyecta credenciales en tiempo de ejecución y no las pasa al cliente MCP.
Solicita una operación aprobada sin recibir credenciales privadas.
Aplica control de acceso granular antes de que cualquier workflow pueda ejecutarse.
Ejecuta el script, contenedor, SQL, HTTP, SSH o sub-workflow que ya confías.
Las herramientas y datos de producción quedan detrás de Dagu, no dentro del contexto del cliente.
Los clientes compatibles con MCP solicitan acciones de workflow nombradas mediante Dagu MCP en lugar de recibir credenciales de shell, base de datos o API.
Dagu verifica acceso, inyecta secretos solo en tiempo de ejecución y puede pausar workflows sensibles para aprobación humana.
Cada run conserva logs, salidas, estado, historial y evidencia de auditoría para personas y clientes MCP.
Expone solo las acciones que cada cliente MCP tiene permitido ejecutar.
Inyecta credenciales en tiempo de ejecución sin pasarlas al cliente MCP.
Registra quién o qué solicitó cada workflow y con qué entradas.
Pausa operaciones de alto riesgo para revisión humana.
Devuelve estado y salidas sin abrir acceso crudo al sistema.
El agente recibe una herramienta limitada. Tus sistemas privados mantienen secretos, logs, permisos e historial operativo en Dagu.
Modelos de despliegue
Ejecuta una instancia auto-hospedada, usa el servidor gestionado de Dagu, o combina el plano de control en la nube con workers privados en tu infraestructura.
Local
Ejecuta `dagu start-all` en una maquina con estado local respaldado por archivos. Sin database, broker ni platform stack.
Autoalojado
Mantiene Dagu server, workers, secrets, logs y execution dentro de tu propio entorno.
Dagu
Usa un Dagu server dedicado operado por Dagu en una instancia gVisor aislada en GKE.
Hibrido
Deja que Dagu opere el server mientras private workers ejecutan Docker, private-network o data-local steps.
Ejecución híbrida
Hybrid mantiene el Dagu server gestionado mientras la execution que necesita tu network, runtime o data permanece bajo tu control.
Las funcionalidades de motor de flujo de trabajo battle-tested te permiten centrarte en el valor central sin preocuparte por la orquestación.
Ejecuta miles de workflows por día en una máquina, según el hardware, la forma del workflow, la duración de los pasos y la configuración de colas.
Usa colas, límites de concurrencia y workers distribuidos para controlar la carga y repartir jobs entre máquinas.
Programaciones recurrentes, catchup, ejecuciones duraderas, tiempos de espera, reinicios, notificaciones y enrutamiento de incidentes a los responsables.
Gestión de usuarios, RBAC, espacios de trabajo, pasos de aprobación, gestión de secretos integrada, claves API y webhooks.
Convierte las solicitudes repetitivas de ingeniería en flujos de trabajo de autoservicio. Los equipos de negocio los ejecutan de forma independiente. Los ingenieros se mantienen al margen.
Lleva scripts shell, scripts Python, llamadas HTTP y jobs programados existentes a Dagu sin reescribirlos.
Coordina backups por SSH, limpiezas, scripts de despliegue, ventanas de parches, precondiciones y lifecycle hooks.
Ejecuta consultas PostgreSQL o SQLite, transferencias S3, transformaciones jq, validaciones y sub-workflows reutilizables.
Compón workflows donde cada paso puede ejecutar una imagen Docker, un Job de Kubernetes, un comando shell o una validación.
Ejecuta ffmpeg, extracción de miniaturas, normalización de audio, procesamiento de imágenes y otros trabajos pesados en workers.
Ejecuta lectura de sensores, limpieza local, sincronización offline, health checks y mantenimiento en dispositivos pequeños.
Ejecuta cualquier harness para automatizar ciertos flujos de trabajo de desarrollo con contexto limpio y retry y failover automáticos.
Convierte scripts privados, CLIs internos, acciones reutilizables, herramientas fijadas y artefactos en workflows que otros equipos pueden solicitar o ejecutar de forma segura.
tools:
- jqlang/jq@jq-1.7.1
steps:
- id: collect
action: acme/dagu-action-export@v1.4.2
with:
dataset: customers
- id: transform
run: jq '.items[] | {id, email}' ${steps.collect.outputs.path}
stdout:
artifact: reports/customers.json
depends: [collect]
- id: publish
action: outputs.write
with:
values:
report: reports/customers.json
rows: ${steps.collect.outputs.rows}
depends: [transform]
Dagu está equipado con funcionalidades de motor de flujo de trabajo de nivel producción.
Comentarios reales de la comunidad GitHub de Dagu.
Últimamente he estado buscando una alternativa para workflows dinámicos de agentes. Empecé por la vía de Temporal. Temporal es potente, pero si solo quieres encadenar dinámicamente agentes, scripts, procesamiento de datos y tareas de operaciones, todo el sistema puede sentirse un poco pesado. Entonces encontré Dagu y la dirección me pareció acertada. Corre con un solo binario, los flujos se escriben en YAML, todo se gestiona en archivos locales, trae una interfaz web y no hace falta levantar una DB ni un broker adicional. También trae muchas acciones integradas: shell, Docker, K8s Jobs, SSH… están todas. Una grata sorpresa fue harness.run, que permite conectar CLIs de coding agents externos directamente al flujo. Lo que más me gusta: el flujo en sí es un archivo, y el estado, los logs, los reintentos, las dependencias y la interfaz ya vienen resueltos. Para equipos pequeños, entornos privados, automatización personal y workflows de agentes, el enfoque local-first de Dagu resulta realmente cómodo.
This is literally my dream project. I have set up GitLab at some point just to run some commands and this project is perfect for all my use case. Thank you very much!
@vnghia
Developer
Dagu is really a gem in the open source world! ❤️ What a release — with GitHub Actions as well. Thanks guys.
@borestad
Elk Studios
Dagu is an amazing tool!! It works perfectly now, thank you so much! 💖
@jarnik
Freelance developer
I've been exploring Dagu for a few weeks and really love the Zero-Ops philosophy. The declarative YAML approach is exactly what the workflow orchestration space needs.
@vincent067
Developer
Amazing! I did not expect this to be delivered that fast! Multiple schedulers do not compete and the locking mechanism works as expected. Good job!
@jonasban
Developer
I've recently played around with Dagu for private stuff and think it could also be worth introducing at work.
@DarkWiiPlayer
Developer
Awesome, it works like a charm! I second the update of the doc on this one.
@thibmart1
Developer
That's very impressive. The exit code dictionary will make these DAGs even further sophisticated. Once again, very good features. 🫡
@ghansham
Developer
This is literally my dream project. I have set up GitLab at some point just to run some commands and this project is perfect for all my use case. Thank you very much!
@vnghia
Developer
Dagu is really a gem in the open source world! ❤️ What a release — with GitHub Actions as well. Thanks guys.
@borestad
Elk Studios
Dagu is an amazing tool!! It works perfectly now, thank you so much! 💖
@jarnik
Freelance developer
I've been exploring Dagu for a few weeks and really love the Zero-Ops philosophy. The declarative YAML approach is exactly what the workflow orchestration space needs.
@vincent067
Developer
Amazing! I did not expect this to be delivered that fast! Multiple schedulers do not compete and the locking mechanism works as expected. Good job!
@jonasban
Developer
I've recently played around with Dagu for private stuff and think it could also be worth introducing at work.
@DarkWiiPlayer
Developer
Awesome, it works like a charm! I second the update of the doc on this one.
@thibmart1
Developer
That's very impressive. The exit code dictionary will make these DAGs even further sophisticated. Once again, very good features. 🫡
@ghansham
Developer
This is literally my dream project. I have set up GitLab at some point just to run some commands and this project is perfect for all my use case. Thank you very much!
@vnghia
Developer
Dagu is really a gem in the open source world! ❤️ What a release — with GitHub Actions as well. Thanks guys.
@borestad
Elk Studios
Dagu is an amazing tool!! It works perfectly now, thank you so much! 💖
@jarnik
Freelance developer
I've been exploring Dagu for a few weeks and really love the Zero-Ops philosophy. The declarative YAML approach is exactly what the workflow orchestration space needs.
@vincent067
Developer
Amazing! I did not expect this to be delivered that fast! Multiple schedulers do not compete and the locking mechanism works as expected. Good job!
@jonasban
Developer
I've recently played around with Dagu for private stuff and think it could also be worth introducing at work.
@DarkWiiPlayer
Developer
Awesome, it works like a charm! I second the update of the doc on this one.
@thibmart1
Developer
That's very impressive. The exit code dictionary will make these DAGs even further sophisticated. Once again, very good features. 🫡
@ghansham
Developer
I love how simple this is now.
@n3storm
Estudio Nexos
Fantastic! Thanks for the quick reply — keep up the great project!
@mitchplze
Developer
Amazing support! Thank you!
@kacamific
Developer
It works perfectly with v2.6.1. Thank you very much for the correction.
@napnap75
Developer
Thanks for the fix. Works great now.
@triole
Developer
As always, appreciate the great work — just sharing feedback to help shape the roadmap.
@jonnochoo
Developer
it's awesome you keep working on it 👍
@fishnux
Developer
Thank you so much for the quick fix! I tested it, and it now correctly stores the files where it should.
@IngwiePhoenix
Developer
I love how simple this is now.
@n3storm
Estudio Nexos
Fantastic! Thanks for the quick reply — keep up the great project!
@mitchplze
Developer
Amazing support! Thank you!
@kacamific
Developer
It works perfectly with v2.6.1. Thank you very much for the correction.
@napnap75
Developer
Thanks for the fix. Works great now.
@triole
Developer
As always, appreciate the great work — just sharing feedback to help shape the roadmap.
@jonnochoo
Developer
it's awesome you keep working on it 👍
@fishnux
Developer
Thank you so much for the quick fix! I tested it, and it now correctly stores the files where it should.
@IngwiePhoenix
Developer
I love how simple this is now.
@n3storm
Estudio Nexos
Fantastic! Thanks for the quick reply — keep up the great project!
@mitchplze
Developer
Amazing support! Thank you!
@kacamific
Developer
It works perfectly with v2.6.1. Thank you very much for the correction.
@napnap75
Developer
Thanks for the fix. Works great now.
@triole
Developer
As always, appreciate the great work — just sharing feedback to help shape the roadmap.
@jonnochoo
Developer
it's awesome you keep working on it 👍
@fishnux
Developer
Thank you so much for the quick fix! I tested it, and it now correctly stores the files where it should.
@IngwiePhoenix
Developer
Dagu sigue siendo open source. Minimum incluye 3 licencias de servidor self-host; Pro incluye 15. Cada licencia cubre un servidor Dagu, con workers ilimitados.
3 licencias de servidor Dagu self-host
15 licencias de servidor Dagu self-host
Crea una prueba de licencia self-host de 14 días en minutos
Sin tarjeta de crédito
Instala Dagu con el asistente guiado y luego continúa en la guía completa de instalación o en la guía rápida.
Los instaladores por script son la ruta recomendada. Homebrew, npm y Docker siguen disponibles, pero solo instalan el binario o el contenedor.
Instala el skill de Dagu para crear workflows, o conecta un cliente MCP a un servidor Dagu en ejecución.
Ayuda a Claude Code, Codex, Gemini CLI y otras herramientas de programación con IA a escribir YAML de Dagu.
Permite que clientes compatibles con MCP lean el estado de Dagu, previsualicen cambios y controlen ejecuciones DAG.
El acceso MCP con OIDC/SSO está disponible para despliegues empresariales. Contáctanos para hablar de la configuración.
El instalador guiado puede completar por ti la configuración inicial.
No dudes en comunicarte para consultas empresariales, preguntas o comentarios. Nos encantaría saber de ti.