
Dagu
Self-hosted workflow scheduler that runs DAGs from YAML, with a web UI, retries, notifications, and logs for operational automation.

Dagu is a lightweight workflow engine and scheduler for running tasks as Directed Acyclic Graphs (DAGs). Workflows are defined in simple YAML files and executed by an agent, with a built-in web UI for operations such as running, monitoring, and debugging.
Key Features
- Define workflows as DAGs in YAML (steps, dependencies, schedules)
- Built-in Web UI to view DAG status, runs, and execution history
- Manual runs, scheduled runs (cron-style), and dependency-based execution
- Retries, timeouts, and failure handling per step/workflow
- Centralized logging and execution artifacts/history for troubleshooting
- Notifications (e.g., via common channels like email/Slack) and callbacks/hooks for run events
- Parameterization and environment variables for reusable workflows
Use Cases
- Server and ops automation (backups, maintenance jobs, batch scripts)
- Data/ETL-style pipelines that can be expressed as shell commands or scripts
- Scheduled report generation or periodic integrations between systems
Dagu is a good fit when you want a simple, file-defined DAG scheduler with an operational UI, without adopting a heavier orchestration stack. It works well for teams that prefer Git-managed YAML workflows and straightforward deployment for internal automation.