Welcome to Dagu
Dagu Mascot - Squirrel Pilot

Powerful Workflow Orchestration Made Simple

The simplest way to run complex workflows

Zero intrusion. Single binary. No databases. Just YAML files on your file system.

Try Live DemoLogin with demouser / demouser
Built for real workflows
USE CASES

From simple scripts to complex pipelines, Dagu handles it all.

Data Pipelines

Build reliable ETL workflows, data sync, and batch processing jobs.

  • 1Chain extract, transform, and load steps with dependencies
  • 2Query databases directly with postgres and sqlite step types
  • 3Process data on schedule or trigger manually
  • 4Track execution history and debug issues
workflow.yaml
steps:
  - name: extract
    type: postgres
    config:
      dsn: "${DATABASE_URL}"
    command: "SELECT * FROM users WHERE active = true"
    output: USERS

  - name: transform
    command: python transform.py

  - name: load
    type: sqlite
    config:
      dsn: "file:./analytics.db"
    command: "INSERT INTO processed_users ..."
Terminal
# Get started instantly
$curl -L https://...installer.sh | sh
✓ dagu installed successfully
$dagustart-all
✓ Web UI ready at http://localhost:8080
Key Strengths

Zero Intrusion

No SDK required. Your code stays untouched.

Self-contained

Single binary, no external dependencies

Language agnostic

Run any script, any language

Features

Production-Ready Features

Everything you need in a single binary. No external dependencies required.

Quickstart Guide
1

Install Dagu

Binary
$curl -L https://raw.githubusercontent.com/dagu-org/dagu/main/scripts/installer.sh | bash
✓ Installed to /usr/local/bin/dagu
2

Create a workflow

hello.yaml
$cat > hello.yaml << EOF
# Your first workflow
steps:
- command: echo "Hello from dagu!"
- command: ls -la
EOF
✓ hello.yaml created
3

Run it

Terminal
$dagu start hello.yaml
Running hello...
✓ hello finished
Hello from dagu!
Running list...
✓ list finished
-rw-r--r-- hello.yaml
✓ Workflow completed successfully
4

Explore the Web UI

Dagu includes a modern web interface for monitoring and managing workflows.

Terminal
$dagu start-all
✓ Server started at http://localhost:8080
Web UI: Real-time monitoring, visual DAG view, execution history
GitHub

Join our community!

Share ideas, request features, showcase use cases, report bugs, or get help from the community