The workflow engine that doesn't turn into an SRE project.
Dagu is a local-first workflow engine for ops automation and AI-assisted operations. Open source and self-hostable: one binary, no external database or broker. Define DAGs in declarative YAML. It supports shell commands, docker containers, k8s jobs, remote commands via SSH, and more. Keep existing scripts and tools as they are while Dagu adds scheduling, retries, approvals, logs, and run history around them.
Dagu is built for developers who want powerful workflow orchestration without the operational overhead.
# runs every night at 02:00schedule: "0 2 * * *"steps:- name: fetch datacommand: python fetch.pyretryPolicy:limit: 3- name: build reportcommand: python report.py- name: notifycommand: ./notify.sh
Trusted by developers at
The control plane around your real work
Dagu gives teams the missing operational layer for scripts, tools, runbooks, and Agent Harness workflows.
Observability
Track workflows, schedules, live status, logs, run history, outputs, artifacts, and approvals in the Web UI.
Language-agnostic execution
Run shell commands, Python scripts, containers, Kubernetes Jobs, SQL queries, HTTP requests, SSH commands, and more.
MCP server
Let MCP-capable agents inspect Dagu state, preview changes, edit workflows, and control runs.
Agent Harness workflows
Run external agent CLIs from workflows while keeping logs, approvals, secrets, and audit history in Dagu.
Secret management
Inject secrets into workflow runs and mask sensitive values in logs for users, agents, and chat tools.
Permission control
Use RBAC, SSO, API keys, workspace controls, and audit logs to govern workflow access.
Production-grade workflow engine features
Battle-tested workflow engine features let you focus on the core value without worrying about orchestration.
Performance
Run thousands of workflow runs per day on one machine, depending on hardware, workflow shape, step duration, and queue settings.
Distributed executions
Use queues, concurrency limits, and distributed workers to control load and spread jobs across machines.
Notifications
Recurring schedules, catchup, durable executions, timeouts, reruns, notification, and incidents routing to responders.
Auth & RBAC
User management, RBAC, workspaces, approval steps, built-in secret management, API Keys, and webhooks.
Common patterns
Private Script Workflows
Turn private scripts, internal CLIs, reusable actions, pinned tools, and artifacts into workflows other teams can safely request or run.
- 1Keep existing scripts and commands intact
- 2Expose narrow parameters instead of broad production access
- 3Call versioned Dagu Actions with typed outputs
- 4Store reports and logs as first-class artifacts
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]
Loved by developers
Real comments from the Dagu GitHub community.
I've been looking for an alternative for dynamic agent workflows lately. I started out down the Temporal path. Temporal is powerful, but if all you want is to dynamically chain agents, scripts, data processing, and ops tasks together, the whole stack can feel a bit heavy. Then I came across Dagu, and the direction felt right. It runs as a single binary, workflows are written in YAML, everything lives in local files, it ships with a web UI, and there's no extra DB or broker to stand up. There are plenty of built-in actions too: shell, Docker, K8s Jobs, SSH β all there. A nice surprise was harness.run, which lets you plug external coding agent CLIs straight into a workflow. What I like most: the workflow itself is just a file, and state, logs, retries, dependencies, and the UI are all taken care of for you. For small teams, private environments, personal automation, and agent workflows, Dagu's local-first approach turns out to be a really comfortable fit.
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
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
I've recently played around with Dagu for private stuff and think it could also be worth introducing at work.
@DarkWiiPlayer
Developer
Self-hosted on your own infrastructure
Dagu is GPLv3 and free forever. Paid licenses add SSO, RBAC, audit logging, incident routing, and support for teams.
- Full workflow automation and monitoring
- Web UI with DAG visualization
- Docker, SSH, and HTTP executors
- Cron scheduling & retries
- Up to 2 API keys for automation
3 self-host Dagu server licenses
15 self-host Dagu server licenses
For teams building event-driven workflow infrastructure in complex environments
- Architecture consulting for distributed setup
- Custom implementation
- MCP OIDC/SSO setup guidance
- Initial migration support
- Dedicated meetings
Custom Solutions
Building tailored features for specific company needs.
Turnkey Solutions
Creating ready-to-go setups to help teams scale Dagu easily without burning massive technical or server resources.
Create a 14-day self-host license trial in minutes β 14 days, No credit card required. Start free license trial
Quickstart
Install Dagu with the guided wizard, then continue in the full installation guide or quickstart docs.
Install dagu command
The script installers are the recommended path. Homebrew, npm, and Docker remain available for binary-only or container installs.
Connect AI tools
Install the Dagu skill for workflow authoring, or connect an MCP client to a running Dagu server.
Helps Claude Code, Codex, Gemini CLI, and other AI coding tools write Dagu YAML.
Lets MCP-capable clients read Dagu state, preview changes, and control DAG runs.
OIDC/SSO-backed MCP access is available for enterprise deployments. Contact us to discuss setup.
Next steps
The guided installer can finish the first-run setup for you.
Contact
Questions, enterprise needs, or feedback?
We'd love to hear from you.