オーケストレーションが本業ではないチームのために。
置くだけで動く、ローカルファーストのオーケストレーション。
宣言的YAMLでワークフローを定義すれば、単一のオープンソースバイナリが、ローカルでもSSH越しのリモートでも、スケジュール、リトライ、承認、ログ、Web UIまで面倒を見ます。スクリプト、コンテナ、AIエージェントには一切手を加えません。外部データベースもフレームワークも不要です。
$curl -fsSL https://raw.githubusercontent.com/dagucloud/dagu/main/scripts/installer.sh | bash# runs every night at 02:00schedule: "0 2 * * *"type: chainsteps:- id: fetch_datarun: python fetch.pyretry_policy:limit: 3interval_sec: 60- id: build_reportrun: python report.py- id: notifyrun: ./notify.sh
クイックスタート
dagu コマンドをインストール
最初のワークフローを実行
実行する
Web UIを探索
Daguをインストールし、数分でWeb UIから最初のワークフローを実行できます。
Daguを使っていますか?
GitHubでDaguにスターを付けてリポジトリを保存し、プロジェクトへの支持を示してください。
Create a nightly ETL workflow
MCP 対応エージェントすべてで動作
Wiki とランブック
Markdown のランブックをワークフローのそばで管理できます。Web UI または任意の MCP 対応 AI エージェントから更新できます。Git Sync でバージョン管理できます。
詳細を見る実際の業務を支えるコントロールプレーン
以下はすべてオープンソースのバイナリに同梱。SSO・RBAC・監査ログは self-host ライセンスで有効化されます。
Wiki とランブック
Markdown のランブックをワークフローのそばで管理できます。Web UI または任意の MCP 対応 AI エージェントから更新できます。Git Sync でバージョン管理できます。
可観測性
ライブステータス、ステップ別の stdout / stderr ログ、実行履歴、outputs、artifacts、承認を Web UI で。dagu_dag_runs_total などの Prometheus メトリクスも公開。
言語非依存の実行
run: で任意のシェルコマンドを実行。docker.run、kubernetes.run、ssh.run、http.request、postgres.query など50超の built-in action が残りをカバー。コードに SDK は不要。
MCPサーバー
/mcp の Streamable HTTP エンドポイント。エージェントは dagu_read、dagu_change、dagu_execute で状態参照・変更のプレビューと適用・実行制御が可能。
Agent Harnessワークフロー
エージェント CLI の実行でも stdout / stderr ログ、承認ゲート、シークレットのマスキング、実行履歴を Dagu 側に保持。Docker / Podman でのサンドボックス実行にも対応。
シークレット管理
secrets: 参照は実行時に env、ファイル、Kubernetes、Vault、クラウドのシークレットマネージャから解決。値はログと Web UI でマスク。
権限管理
admin から viewer までの5ロール、OIDC SSO、API キー、ワークスペース、監査ログ。ライセンス付き self-host の機能。
50超の built-in ステップ
以下の名前はすべて今日そのままステップとして使えます。プラグインの導入も import も不要。
run:execdocker.runkubernetes.runssh.runhttp.requestpostgres.querysqlite.queryredis.*s3.uploads3.downloadsftp.uploadsftp.downloadfile.*archive.createarchive.extractjq.filterdata.convertdata.pickchat.completionharness.runhuman.tasktype: controllerdag.rundag.enqueuerouter.routewait.durationwait.untilwait.filewait.httpnoopapproval:state.getstate.setstate.diffartifact.writeartifact.readoutputs.writetemplate.renderlog.writemail.sendgit.checkout本番運用
保証と調整項目を、実名で。
パフォーマンス
1台で日数千 run。上限は CPU・ディスク・ワークフロー形状に依存。状態はローカルファイルなので、サイズ設計やマイグレーションが必要な DB はありません。
アーキテクチャ
同じバイナリが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 駆動の構成向け。
よくあるパターン
非公開スクリプトワークフロー
非公開スクリプト、社内 CLI、再利用可能なアクション、固定ツール、成果物を、他チームが安全に依頼または実行できるワークフローにします。
- 1既存のスクリプトやコマンドをそのまま使う
- 2広い本番アクセスではなく限定されたパラメータを公開する
- 3型付き出力を持つバージョン付き Dagu Actions を呼び出す
- 4レポートとログを第一級の成果物として保存する
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 のようなローカルファースト路線がむしろ心地いい。
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
独自インフラ上のセルフホスト
DaguはGPLv3で永久無料です。有償ライセンスでは、チーム向けのSSO、RBAC、監査ログ、インシデントルーティング、サポートを追加できます。
- ワークフロー自動化と監視のフル機能
- DAG可視化付きWeb UI
- Docker、SSH、HTTPエグゼキュータ
- cronスケジューリングとリトライ
- 自動化用 API キーは最大2個
複雑な環境でイベント駆動ワークフロー基盤を構築するチーム向け
- 分散環境構築のアーキテクチャコンサルティング
- カスタム実装
- MCP OIDC/SSO 設定支援
- 初期移行サポート
- 専任ミーティング
- カスタム応答時間SLA
カスタムソリューション
特定の企業ニーズに合わせた機能を構築します。
ターンキーソリューション
膨大な技術リソースやサーバーリソースを消費せずに、チームがDaguを容易にスケールできる、すぐに使えるセットアップを構築します。
14日間のセルフホストライセンストライアルを数分で作成 — 14日間, クレジットカード不要. 無料ライセンストライアルを開始
すべての有償プランに、1営業日以内一次回答の優先メール・チャットサポートが含まれます。 サポートの詳細を見る
ライセンスの適用範囲やCommunityとの違いの詳細: セルフホストライセンスガイド
社内承認が必要ですか? 導入ブリーフを読む
お問い合わせ
質問、バグ報告、アイデア?
GitHub issue、Discord、メールのどれでも。返信は bot ではなくメンテナ本人から返ります。

