dagu: 運用自動化とAI支援オペレーションのためのローカルファーストなワークフローエンジン

何を解決するか

Daguは、複雑なオーケストレーションプラットフォームの管理コストをかけずに運用を自動化する必要があるチーム向けに設計された、ローカルファーストなワークフローエンジンです。既存のスクリプト、コンテナ、およびランブックを、スケジューリング、リトライ、および視覚的なモニタリングを備えた本番環境対応のパイプラインに変換することで、不透明なcronジョブやAirflow、Temporalのような重厚なフレームワークに代わる手段を提供します。

仕組み

ワークフローは、宣言的なYAML形式を使用して、有向非巡回グラフ(DAG)として定義されます。Daguは、組み込みのWeb UIを含む単一のバイナリとして動作し、外部のデータベースやメッセージブローカーを必要としません。単一のマシンでのスタンドアロンモード、またはgRPCを介したコーディネーターと分散ワーカーを使用したスケールアウトが可能です。シェルコマンド、Dockerコンテナ、Kubernetes Jobs、およびSSH経由のリモートコマンドの実行をサポートしており、組み込みのModel Context Protocol (MCP) サーバーおよびコーディングエージェントのCLIを実行するための専用のハネス(harness)を通じて、AIエージェントと統合できます。

対象ユーザー

既存の自動化スクリプトを保有しており、ロジックを特定のSDKに書き換えたり、複雑なインフラストラクチャースタックを管理したりすることなく、オブザーバビリティ、依存関係管理、およびスケジューリングを追加したい運用チーム、データエンジニア、および開発者向けに構築されています。

ハイライト

  • Single Binary Installation: 外部DBMSを必要としない自己完結型のデプロイメント。
  • AI Agent Integration: AIコーディングエージェントをワークフローに統合するための、組み込みのMCPサーバーおよび harness.run アクション。
  • Language Agnostic: シェル、Docker、またはKubernetesを介して、既存のあらゆるスクリプトやツールと連携可能。
  • Human-in-the-loop: 自動化されたパイプライン内での手動介入のための、組み込みの承認ステップ。
  • Distributed Scaling: ラベルを使用して、ワーカーのフリートに実行を分散させる能力。
  • Secret Management: 認証情報がUIやログに漏洩するのを防ぐための、安全なログマスキング。

Sources