The workflow engine that doesn't turn into an SRE project.

Dagu is a lightweight workflow engine that comes with a Web UI. Define any worflows in a simple declarative YAML format. It natively suports shell commands, docker containers, k8s jobs, SSH commands, and more. Self-contained and no DBMS is required.

उन डेवलपर्स के लिए बनाया गया है जो ऑपरेशनल ओवरहेड के बिना शक्तिशाली वर्कफ़्लो ऑर्केस्ट्रेशन चाहते हैं।

Linux
macOS
Windows
Docker
Kubernetes
dagu start-all --port 8080
dagu कमांड इंस्टॉल करें
$curl -fsSL https://raw.githubusercontent.com/dagucloud/dagu/main/scripts/installer.sh | bash

स्व-समाहित

Workflows फ़ाइल-आधारित हैं। एक binary, कोई बाहरी database या broker नहीं चाहिए। Air-gapped वातावरण के लिए तैयार।

CLI-उन्मुख

Shell scripts, Python jobs, SQL, dbt, DuckDB, containers और data runbooks बिना बदले pipeline steps के रूप में चलते हैं। कोई नया framework नहीं चाहिए।

घोषणात्मक

Workflows को सरल, declarative YAML format में define करें। आप किसी भी existing script या tools को बिना modification के use कर सकते हैं।

सुरक्षित AI-agent integration

अपने पसंदीदा AI agent का उपयोग करके workflows बनाएं, सुधारें, debug करें और चलाएं। Built-in secret management logs और agents से credentials छुपाता है, जबकि उन्हें tasks को safely preview और execute करने देता है। पूर्ण audit logging अनुपालन और दृश्यता सुनिश्चित करती है।

MCP के माध्यम से सेट अप करें
workflow.yaml
# Typed inputs और review वाला controlled production runbook
name: "repair-customer-account"

params:
- name: customer_id
type: string
- name: change_scope
type: string
enum: ["metadata_only", "permissions"]
default: metadata_only
- name: dry_run
type: boolean
default: true

steps:
- id: inspect_account
run: ./scripts/inspect-account.sh --customer $${customer_id}
stdout:
artifact: reports/inspection.md

- id: review
action: noop
depends: [inspect_account]
approval:
prompt: "Review the inspection report before repair."

- id: repair_account
run: ./scripts/repair-account.sh --customer $${customer_id} --scope $${change_scope} --dry-run $${dry_run}
depends: [review]
stdout:
artifact: reports/repair.log

Trusted by developers at

1Password
Intel
MongoDB
Baidu
ByteDance
Canonical
Grab
Douban
Debian
NASA / JPL
Gitee
Plaid
Geodis
Aleno
Mambu
Audibene
NINAnor
RUBIX GmbH
cynkra
DataLad
dandi
QNIB Solutions
modoolar
TTT Studios
vital-software
m3dev
Build On Technologies
Dalibo
InfoInnova
infront-quant
gfx-labs
t54-labs
sajo
ANZX
1Password
Intel
MongoDB
Baidu
ByteDance
Canonical
Grab
Douban
Debian
NASA / JPL
Gitee
Plaid
Geodis
Aleno
Mambu
Audibene
NINAnor
RUBIX GmbH
cynkra
DataLad
dandi
QNIB Solutions
modoolar
TTT Studios
vital-software
m3dev
Build On Technologies
Dalibo
InfoInnova
infront-quant
gfx-labs
t54-labs
sajo
ANZX
1Password
Intel
MongoDB
Baidu
ByteDance
Canonical
Grab
Douban
Debian
NASA / JPL
Gitee
Plaid
Geodis
Aleno
Mambu
Audibene
NINAnor
RUBIX GmbH
cynkra
DataLad
dandi
QNIB Solutions
modoolar
TTT Studios
vital-software
m3dev
Build On Technologies
Dalibo
InfoInnova
infront-quant
gfx-labs
t54-labs
sajo
ANZX

AI agent gateway

AI agents को approved actions दें, production access नहीं.

Dagu MCP के through private workflows expose करता है, scoped permissions, runtime-only secrets, logs, history और audit trails के साथ.

AI agent

Private credentials देखे बिना approved operation request करता है.

Request

Dagu MCP

किसी workflow के run होने से पहले granular access control enforce करता है.

Authorize

Approved workflow

आपके trusted script, container, SQL, HTTP, SSH या sub-workflow को चलाता है.

Execute

Private systems

Production tools और data agent context में नहीं, Dagu के पीछे रहते हैं.

ShellSQLSSH

Agents shell, database या API credentials पाने के बजाय Dagu MCP के through named workflow action request करते हैं.

Dagu access check करता है, secrets को केवल runtime पर inject करता है, और sensitive workflows को human approval के लिए pause कर सकता है.

हर run logs, outputs, status, history और audit evidence रखता है ताकि humans और agents inspect कर सकें.

Scoped access

हर agent को केवल allowed actions expose करें.

Managed secrets

Credentials runtime पर inject करें, agent को reveal किए बिना.

Audit trail

Track करें कि किसने या किस चीज़ ने कौन सा workflow किन inputs के साथ run किया.

Approvals

High-risk operations को human review के लिए pause करें.

Safe results

Raw system access खोले बिना status और outputs return करें.

Agent को bounded tool मिलता है. Secrets, logs, permissions और operational history Dagu में रहती है.

आपके real work के चारों ओर control plane

Dagu scripts, tools, runbooks और AI agents के लिए teams को missing operational layer देता है.

Observability

Web UI में workflows, schedules, live status, logs, run history, outputs, artifacts और approvals track करें.

Language-agnostic execution

Shell commands, Python scripts, containers, Kubernetes Jobs, SQL queries, HTTP requests, SSH commands और बहुत कुछ run करें.

Reproducible runs

Workflow YAML में tools pin करें ताकि workers execution से पहले expected binaries install और cache करें.

Multiplayer agents

Shared AI agents को workflows में run करें और workflows को bounded, observable tools की तरह agents को expose करें.

Built-in approvals

Sensitive steps को human review, confirmation या intervention के लिए pause करें, फिर execution continue करें.

MCP server

MCP-capable agents को Dagu state inspect, changes preview, workflows edit और runs control करने दें.

Harness-agnostic agents

Logs, approvals, secrets और audit history Dagu में रखते हुए workflows से coding agents और agent CLIs run करें.

Secret management

Workflow runs में secrets inject करें और users, agents और chat tools के logs में sensitive values mask करें.

Self-host या managed

Single binary run करें, containers या Kubernetes से deploy करें, या managed और hybrid deployment models use करें.

Permission control

RBAC, SSO, API keys, workspace controls और audit logs से workflow access govern करें.

Deployment मॉडल

Self-hosted instance run करें, Dagu managed server use करें, या cloud control plane को अपने infrastructure के private workers के साथ combine करें।

एक machine से शुरू करें। Self-hosted, managed या hybrid तक scale करें।

लोकल

एकल सर्वर

`dagu start-all` को एक machine पर local file-backed state के साथ चलाएं। Database, broker या platform stack की जरूरत नहीं।

सेल्फ-होस्टेड

आपकी infrastructure

Dagu server, workers, secrets, logs और execution को अपने environment में रखें।

Dagu

पूरी तरह प्रबंधित सर्वर

Dagu द्वारा GKE पर isolated gVisor instance में operated dedicated Dagu server इस्तेमाल करें।

हाइब्रिड

प्रबंधित सर्वर, निजी execution

Dagu server operate करे, और private workers Docker, private-network या data-local steps चलाएं।

हाइब्रिड execution

मैनेज्ड Dagu server
mTLS वाला private worker
Docker, private APIs, secrets और data-local work

Hybrid Dagu server को managed रखता है, जबकि जिस execution को आपकी network, runtime या data चाहिए वह आपके control में रहती है।

Production-grade Workflow Engine Features

Battle-tested workflow engine features आपको orchestration की चिंता किए बिना core value पर focus करने देती हैं।

Performance

Hardware, workflow के आकार, step duration और queue settings के आधार पर एक machine पर हर दिन हज़ारों workflow runs चलाए जा सकते हैं।

Distributed Executions

Load को काबू में रखने और jobs को अलग-अलग machines में बाँटने के लिए queues, concurrency limits और distributed workers का इस्तेमाल करें।

Notifications

Recurring schedules, catchup, durable executions, timeouts, reruns, notification, और incidents का responders तक routing।

Auth और RBAC

User management, RBAC, workspaces, approval steps, built-in secret management, API Keys, और webhooks।

Real-world Use Cases

01

Customer Support Automation

Repetitive engineering requests को self-service workflows में बदलें। Business teams उन्हें independently run करती हैं। Engineers loop से बाहर रहते हैं।

02

Cron और Legacy Script Management

Existing shell scripts, Python scripts, HTTP calls और scheduled jobs को rewrite किए बिना Dagu में लाएं.

03

इन्फ्रास्ट्रक्चर और सर्वर ऑटोमेशन

SSH backups, cleanup jobs, deploy scripts, patch windows, precondition checks और lifecycle hooks को एक साथ समन्वित करें।

04

ETL और Data Operations

PostgreSQL या SQLite queries, S3 transfers, jq transforms, validation steps और reusable sub-workflows चलाएँ।

05

GitHub interface है. आपकी infrastructure runtime है.

Managed Dagu GitHub App के माध्यम से issues और PRs के GitHub events से Dagu runs trigger करें।

06

Container और Kubernetes Workflows

ऐसे workflows बनाएँ जिनमें हर step Docker image, Kubernetes Job, shell command या validation step चला सके।

07

मीडिया रूपांतरण

ffmpeg, thumbnail extraction, audio normalization, image processing और दूसरे भारी compute jobs को workers पर चलाएँ।

08

IoT और Edge Workflows

छोटे devices पर sensor polling, local cleanup, offline sync, health checks और maintenance jobs चलाएँ।

09

AI एजेंट वर्कफ़्लो

Clean context और automatic retry व failover के साथ specific development workflow को automate करने के लिए कोई भी harness run करें।

Common Patterns

Health Check
SSH Backup
Notify

Private Script Workflows

Private scripts, internal CLIs, reusable actions, pinned tools और artifacts को ऐसे workflows बनाएं जिन्हें दूसरी teams safely request या run कर सकें.

  • 1Existing scripts और commands intact रखें
  • 2Broad production access की जगह narrow parameters expose करें
  • 3Typed outputs वाले versioned Dagu Actions call करें
  • 4Reports और logs को first-class artifacts की तरह store करें
workflow.yaml
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}' ${collect.outputs.path}
    stdout:
      artifact: reports/customers.json
    depends: [collect]

  - id: publish
    action: outputs.write
    with:
      values:
        report: reports/customers.json
        rows: ${collect.outputs.rows}
    depends: [transform]

Typed Parameters

Dagu उन्हें Web UI में automatically typed parameter input form के रूप में render करता है, जो self-service workflows बनाने या non-engineers द्वारा operation के लिए उपयोगी है।

workflow.yaml
tools:
  - jqlang/jq@jq-1.7.1

steps:
  - id: inspect
    run: jq --version

  - id: summarize
    action: python-script@v1
    with:
      input:
        rows: [42, 8]
      script: |
        return {"total": sum(input["rows"])}

Tools तैयार करने के लिए Dagu default provider के रूप में aqua का उपयोग करता है।

Slack में Multiplayer AI Agent

Slack में AI agent आपके workflows manage करने,failures debug करने और incidents recover करने में मदद करता है।

DaguDagu
संदेश...

पूर्ण Workflow Features

Dagu production-grade workflow engine features से लैस है।

डेवलपर्स की पसंद

Dagu GitHub समुदाय की वास्तविक टिप्पणियाँ।

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

#827

Dagu is really a gem in the open source world! ❤️ What a release — with GitHub Actions as well. Thanks guys.

@borestad

Elk Studios

#1313

Dagu is an amazing tool!! It works perfectly now, thank you so much! 💖

@jarnik

Freelance developer

#1294

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

#1814

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

#1130

I've recently played around with Dagu for private stuff and think it could also be worth introducing at work.

@DarkWiiPlayer

Developer

#924

Awesome, it works like a charm! I second the update of the doc on this one.

@thibmart1

Developer

#1320

That's very impressive. The exit code dictionary will make these DAGs even further sophisticated. Once again, very good features. 🫡

@ghansham

Developer

#1076

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

#827

Dagu is really a gem in the open source world! ❤️ What a release — with GitHub Actions as well. Thanks guys.

@borestad

Elk Studios

#1313

Dagu is an amazing tool!! It works perfectly now, thank you so much! 💖

@jarnik

Freelance developer

#1294

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

#1814

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

#1130

I've recently played around with Dagu for private stuff and think it could also be worth introducing at work.

@DarkWiiPlayer

Developer

#924

Awesome, it works like a charm! I second the update of the doc on this one.

@thibmart1

Developer

#1320

That's very impressive. The exit code dictionary will make these DAGs even further sophisticated. Once again, very good features. 🫡

@ghansham

Developer

#1076

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

#827

Dagu is really a gem in the open source world! ❤️ What a release — with GitHub Actions as well. Thanks guys.

@borestad

Elk Studios

#1313

Dagu is an amazing tool!! It works perfectly now, thank you so much! 💖

@jarnik

Freelance developer

#1294

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

#1814

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

#1130

I've recently played around with Dagu for private stuff and think it could also be worth introducing at work.

@DarkWiiPlayer

Developer

#924

Awesome, it works like a charm! I second the update of the doc on this one.

@thibmart1

Developer

#1320

That's very impressive. The exit code dictionary will make these DAGs even further sophisticated. Once again, very good features. 🫡

@ghansham

Developer

#1076

I love how simple this is now.

@n3storm

Estudio Nexos

#1593

Fantastic! Thanks for the quick reply — keep up the great project!

@mitchplze

Developer

#1359

Amazing support! Thank you!

@kacamific

Developer

#760

It works perfectly with v2.6.1. Thank you very much for the correction.

@napnap75

Developer

#1638

Thanks for the fix. Works great now.

@triole

Developer

#831

As always, appreciate the great work — just sharing feedback to help shape the roadmap.

@jonnochoo

Developer

#770

it's awesome you keep working on it 👍

@fishnux

Developer

#328

Thank you so much for the quick fix! I tested it, and it now correctly stores the files where it should.

@IngwiePhoenix

Developer

#423

I love how simple this is now.

@n3storm

Estudio Nexos

#1593

Fantastic! Thanks for the quick reply — keep up the great project!

@mitchplze

Developer

#1359

Amazing support! Thank you!

@kacamific

Developer

#760

It works perfectly with v2.6.1. Thank you very much for the correction.

@napnap75

Developer

#1638

Thanks for the fix. Works great now.

@triole

Developer

#831

As always, appreciate the great work — just sharing feedback to help shape the roadmap.

@jonnochoo

Developer

#770

it's awesome you keep working on it 👍

@fishnux

Developer

#328

Thank you so much for the quick fix! I tested it, and it now correctly stores the files where it should.

@IngwiePhoenix

Developer

#423

I love how simple this is now.

@n3storm

Estudio Nexos

#1593

Fantastic! Thanks for the quick reply — keep up the great project!

@mitchplze

Developer

#1359

Amazing support! Thank you!

@kacamific

Developer

#760

It works perfectly with v2.6.1. Thank you very much for the correction.

@napnap75

Developer

#1638

Thanks for the fix. Works great now.

@triole

Developer

#831

As always, appreciate the great work — just sharing feedback to help shape the roadmap.

@jonnochoo

Developer

#770

it's awesome you keep working on it 👍

@fishnux

Developer

#328

Thank you so much for the quick fix! I tested it, and it now correctly stores the files where it should.

@IngwiePhoenix

Developer

#423

Quickstart

गाइडेड विज़ार्ड से Dagu इंस्टॉल करें, फिर पूरी installation guide या quickstart docs में आगे बढ़ें।

1

dagu कमांड इंस्टॉल करें

स्क्रिप्ट इंस्टॉलर सबसे आसान और सुझाया गया तरीका है। Homebrew, npm और Docker भी उपलब्ध हैं, लेकिन वे केवल बाइनरी या कंटेनर इंस्टॉल करते हैं।

Mac/Linux टर्मिनल
$curl -fsSL https://raw.githubusercontent.com/dagucloud/dagu/main/scripts/installer.sh | bash
✓ गाइडेड इंस्टॉलर तैयार है
Optional

AI tools कनेक्ट करें

Workflow authoring के लिए Dagu skill इंस्टॉल करें, या चल रहे Dagu server से MCP client कनेक्ट करें।

Dagu skill
$gh skill install dagucloud/dagu dagu

Claude Code, Codex, Gemini CLI और अन्य AI coding tools को Dagu YAML लिखने में मदद करता है।

Dagu MCP एंडपॉइंट
URLhttp://localhost:8080/mcp

MCP-capable clients को Dagu state पढ़ने, changes preview करने और DAG runs control करने देता है।

OIDC/SSO-backed MCP access enterprise deployments के लिए उपलब्ध है। setup पर चर्चा करने के लिए हमसे संपर्क करें

2

अगला चरण

गाइडेड इंस्टॉलर आपके लिए पहली बार की सेटअप पूरी कर सकता है।

# इंस्टॉलर क्या कर सकता है
Dagu को PATH में जोड़ना
बैकग्राउंड सर्विस सेट करना
पहला एडमिन बनाना और सत्यापित करना

प्रोजेक्ट समुदाय

Usage पर चर्चा करें, issues रिपोर्ट करें, और development follow करें।

Solution partner

Customer projects के लिए solution partner support

जो teams Dagu को customer-facing products, internal platforms या managed services में embed करती हैं, उनके लिए हम enterprise features और hands-on integration support देते हैं.

हम partners को security model, integration path और operating plan design करने में मदद करते हैं ताकि Dagu customer projects में साफ तरीके से fit हो और broad production access देने की जरूरत न पड़े.

संपर्क करें

Enterprise OIDC/SSO और access control

Agent और customer workflows के लिए MCP support

Self-hosted, managed या hybrid deployments के लिए architecture review

Private worker, secrets और network-bound execution setup

Scripts और runbooks को customer-facing workflows में migrate करना

Project delivery से production launch तक dedicated support