オーケストレーションが本業ではないチームのために。

置くだけで動く、ローカルファーストのオーケストレーション。

宣言的YAMLでワークフローを定義すれば、単一のオープンソースバイナリが、ローカルでもSSH越しのリモートでも、スケジュール、リトライ、承認、ログ、Web UIまで面倒を見ます。スクリプト、コンテナ、AIエージェントには一切手を加えません。外部データベースもフレームワークも不要です。

dagu コマンドをインストール
$curl -fsSL https://raw.githubusercontent.com/dagucloud/dagu/main/scripts/installer.sh | bash
daily-report.yaml
# runs every night at 02:00
schedule: "0 2 * * *"
type: chain
steps:
- id: fetch_data
run: python fetch.py
retry_policy:
limit: 3
interval_sec: 60
- id: build_report
run: python report.py
- id: notify
run: ./notify.sh
last run · 02:00:04 · exit 03/3 steps

クイックスタート

クイックスタート
1

dagu コマンドをインストール

バイナリ
$curl -L https://raw.githubusercontent.com/dagucloud/dagu/main/scripts/installer.sh | bash
✓ Installed to /usr/local/bin/dagu
2

最初のワークフローを実行

hello.yaml
$cat > hello.yaml << EOF
# 最初のワークフロー
steps:
- command: echo "Hello from dagu!"
- command: ls -la
EOF
✓ hello.yamlが作成されました
3

実行する

Terminal
$dagu start hello.yaml
Running hello...
✓ hello finished
Hello from dagu!
Running list...
✓ list finished
-rw-r--r-- hello.yaml
✓ ワークフローが正常に完了しました
4

Web UIを探索

Daguをインストールし、数分でWeb UIから最初のワークフローを実行できます。

Terminal
$dagu start-all
✓ サーバーが http://localhost:8080 で開始されました
Web UI: リアルタイム監視、ビジュアルDAGビュー、実行履歴

Daguを使っていますか?

GitHubでDaguにスターを付けてリポジトリを保存し、プロジェクトへの支持を示してください。

GitHubでDaguにスター

ワークフローの​全操作を、​チャットから

散らばった​ワークフローを​ひとつに。​作成、編集、デバッグ、​復旧、分析まで、​いつもの AI チャットで​完結します。

詳細を見る
作成編集デバッグ復旧分析
AI chat

Create a nightly ETL workflow

etl-nightly · Dagu
extracttransformloadverify

MCP 対応エージェントすべてで動作

Claude CodeClaude Code
CursorCursor
GitHub CopilotGitHub Copilot
OpenAI CodexOpenAI Codex
Gemini CLIGemini CLI
KiroKiro
WindsurfWindsurf
ClineCline
Roo CodeRoo Code
ZedZed
DevinDevin
TraeTrae
ChatGPTChatGPT
JunieJunie
GooseGoose
AmpAmp
OpenCodeOpenCode
AntigravityAntigravity
Amazon QAmazon Q
WarpWarp
VS CodeVS Code
RaycastRaycast
LM StudioLM Studio
PerplexityPerplexity

Wiki とランブック

Markdown のランブックをワークフローのそばで管理できます。Web UI または任意の MCP 対応 AI エージェントから更新できます。Git Sync でバージョン管理できます。

詳細を見る
Wiki とランブック

実際の業務を支えるコントロールプレーン

以下はすべてオープンソースのバイナリに同梱。SSO・RBAC・監査ログは self-host ライセンスで有効化されます。

50超の built-in ステップ

以下の名前はすべて今日そのままステップとして使えます。プラグインの導入も import も不要。

実行
run:execdocker.runkubernetes.runssh.runhttp.request
データ & ファイル
postgres.querysqlite.queryredis.*s3.uploads3.downloadsftp.uploadsftp.downloadfile.*archive.createarchive.extractjq.filterdata.convertdata.pick
AI
chat.completionharness.runhuman.tasktype: controller
フロー制御
dag.rundag.enqueuerouter.routewait.durationwait.untilwait.filewait.httpnoopapproval:
状態 & 配信
state.getstate.setstate.diffartifact.writeartifact.readoutputs.writetemplate.renderlog.writemail.sendgit.checkout

入出力つきの全リストは Dagu Actions ドキュメントへ

本番運用

保証と調整項目を、実名で。

パフォーマンス

1台で日数千 run。上限は CPU・ディスク・ワークフロー形状に依存。状態はローカルファイルなので、サイズ設計やマイグレーションが必要な DB はありません。

分散実行

DAG 単位の並列度制限つきファイルベースキュー。dagu coordinator が gRPC で gpu=true などのラベルで選ばれた worker にディスパッチ。

通知

タイムゾーン対応 cron、catchup_window、overlap_policy、ステップ別 retry_policy、ゾンビ検出、ライフサイクルハンドラ、メール / webhook 通知、インシデントルーティング。

認証とRBAC

DAGU_AUTH_MODE は none / basic / builtin。5つの RBAC ロール、ワークスペース、承認ステップ、シークレットマスキング、API キー、DAG 別 webhook トークン。

アーキテクチャ

同じバイナリが3形態で動く。

Standalone

dagu start-all の1プロセスが HTTP サーバ、スケジューラ、エグゼキュータを実行。ストレージはファイルベース。

┌─────────────────────────────────────────┐
│  dagu start-all                         │
│  ┌───────────┐ ┌───────────┐ ┌────────┐ │
│  │ HTTP / UI │ │ Scheduler │ │Executor│ │
│  └───────────┘ └───────────┘ └────────┘ │
│  File-based storage (logs, state, queue)│
└─────────────────────────────────────────┘

Coordinator と worker

スケジューラがファイルベースキューへ投入し、gRPC の coordinator がラベルルーティングで worker にディスパッチ。worker はローカル実行して状態を返す。

┌───────────┐        ┌───────────┐
│ Scheduler │        │ HTTP / UI │
│ ┌───────┐ │        └─────┬─────┘
│ │ Queue │ │              │ gRPC
│ └───────┘ │              │
└─────┬─────┘              │
      │ Dispatch (gRPC)    │
      ▼                    ▼
   ┌─────────────────────────┐
   │       Coordinator       │
   └────────────▲────────────┘
                │ poll / heartbeat
   ┌────────────┼────────────┐
┌──┴─────┐   ┌──┴─────┐   ┌──┴─────┐
│ Worker │   │ Worker │   │ Worker │
└────────┘   └────────┘   └────────┘

Headless: DAGU_HEADLESS=true で Web UI なしの同一バイナリ。CI や API 駆動の構成向け。

よくあるパターン

Health Check
SSH Backup
Notify

非公開スクリプトワークフロー

非公開スクリプト、社内 CLI、再利用可能なアクション、固定ツール、成果物を、他チームが安全に依頼または実行できるワークフローにします。

  • 1既存のスクリプトやコマンドをそのまま使う
  • 2広い本番アクセスではなく限定されたパラメータを公開する
  • 3型付き出力を持つバージョン付き Dagu Actions を呼び出す
  • 4レポートとログを第一級の成果物として保存する
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}' ${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]

開発者に愛されるツール

Dagu GitHubコミュニティからのリアルなコメント。

最近ずっと、Agent の動的ワークフローの代替を探していた。 最初は Temporal の線で探していた。Temporal は強力だが、agent・スクリプト・データ処理・運用タスクを動的につなげたいだけなら、仕組み全体が少し重く感じることもある。 そこで Dagu を見つけて、方向性がとても合っていると感じた。 単一バイナリで動き、フローは YAML で書け、ローカルファイルで管理でき、Web UI も付いていて、DB やブローカーを別途立てる必要もない。 組み込みアクションも豊富で、shell、Docker、K8s Job、SSH などが揃っている。うれしい驚きだったのは harness.run で、外部の coding agent CLI をそのままフローに組み込める。 気に入っているのは、フローそのものがファイルで、状態・ログ・リトライ・依存関係・画面まで全部面倒を見てくれるところ。 小規模チーム、プライベート環境、個人の自動化、そして agent ワークフローには、Dagu のようなローカルファースト路線がむしろ心地いい。
Alipay のエンジニア

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

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

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

@DarkWiiPlayer

Developer

#924

独自インフラ上のセルフホスト

DaguはGPLv3で永久無料です。有償ライセンスでは、チーム向けのSSO、RBAC、監査ログ、インシデントルーティング、サポートを追加できます。

コミュニティ
永久無料
無制限のサーバー、無制限のワーカー
  • ワークフロー自動化と監視のフル機能
  • DAG可視化付きWeb UI
  • Docker、SSH、HTTPエグゼキュータ
  • cronスケジューリングとリトライ
  • 自動化用 API キーは最大2個
Minimum
$50 / 月

セルフホスト Dagu サーバー3台分のライセンス

3ライセンス = 3サーバー、ワーカーは無制限
無料ライセンストライアルを開始
Pro
$150 / 月

セルフホスト Dagu サーバー15台分のライセンス

15ライセンス = 15サーバー、ワーカーは無制限
無料ライセンストライアルを開始
エンタープライズ
カスタム

複雑な環境でイベント駆動ワークフロー基盤を構築するチーム向け

カスタムサーバーライセンス数
  • 分散環境構築のアーキテクチャコンサルティング
  • カスタム実装
  • MCP OIDC/SSO 設定支援
  • 初期移行サポート
  • 専任ミーティング
  • カスタム応答時間SLA
私たちが作るもの
  • カスタムソリューション

    特定の企業ニーズに合わせた機能を構築します。

  • ターンキーソリューション

    膨大な技術リソースやサーバーリソースを消費せずに、チームがDaguを容易にスケールできる、すぐに使えるセットアップを構築します。

お問い合わせ

14日間のセルフホストライセンストライアルを数分で作成14日間, クレジットカード不要. 無料ライセンストライアルを開始

すべての有償プランに、1営業日以内一次回答の優先メール・チャットサポートが含まれます。 サポートの詳細を見る

ライセンスの適用範囲やCommunityとの違いの詳細: セルフホストライセンスガイド

社内承認が必要ですか? 導入ブリーフを読む

お問い合わせ

質問、バグ報告、アイデア?

GitHub issue、Discord、メールのどれでも。返信は bot ではなくメンテナ本人から返ります。