
Dagu
Portable, file-backed workflow orchestrator that defines DAGs in declarative YAML, runs anywhere as a single binary, and includes a modern Web UI for monitoring and control.

Dagu is a lightweight workflow orchestration engine that runs as a single self-contained binary and provides a modern Web UI. Workflows are defined in a declarative YAML format and can execute local commands, SSH commands, and containerized steps with scheduling and retries.
Key Features
- Single-binary installation with zero required external dependencies; uses file-based storage for definitions, logs, and history
- Declarative YAML DSL for DAGs with scheduling (cron), timezones, conditional steps, retries, and repeat policies
- Built-in Web UI: visual DAG view, real-time monitoring, execution history, log search, and an integrated YAML editor
- Executors for shell commands, Docker containers, SSH remote execution, and HTTP steps
- Distributed execution: coordinator/worker model and built-in queueing to scale across machines
- Nested/sub-DAG support for reusable composition and inspectable sub-runs in the UI
- Integrations and platform features: GitHub Actions executor, API key management and RBAC, webhooks, email notifications
- Newer features include human-in-the-loop approvals and a Chat Executor for integrating LLMs into workflows
Use Cases
- Replace scattered cron jobs with a visual, auditable DAG system for server maintenance and operational scripts
- Orchestrate multi-step CI/maintenance workflows that mix local scripts, SSH calls, and containerized tasks
- Run distributed data-processing pipelines across multiple worker nodes with centralized monitoring and retries
Limitations and Considerations
- Secrets management is not provided as a full built-in secret store; references and integrations (KMS/Vault/OIDC) are discussed/tracked as planned features
- While Dagu supports distributed runs and queueing, very large cloud-native deployments may require external orchestration or custom scaling strategies
Dagu is designed for teams that want powerful orchestration with minimal operational overhead and straightforward local-first deployment. It emphasizes portability, simple YAML-based definitions, and an integrated UI for everyday workflow operations.


