Dagu

Le détail d'une exécution en thème sombre : un graphe d'une quinzaine d'étapes de publication vidéo, arrêté sur une étape d'approbation encadrée en orange.

C'est quoi ?

Dagu est un moteur de workflows à héberger soi-même. Un fichier YAML décrit les étapes d'un DAG (commandes shell, conteneurs Docker, Jobs Kubernetes, commandes SSH) et leurs dépendances ; Dagu les planifie, relance celles qui échouent et garde journaux et historique dans une interface web. Les scripts n'importent rien de Dagu : sans le YAML, ils tournent comme avant.

Pourquoi c'est intéressant ?

  • Un seul binaire, sans base : dagu start-all lance le serveur web, le planificateur et le coordinateur dans un processus, qui range état, file d'attente et journaux dans des fichiers locaux. Il tourne sous Linux, macOS et Windows, et s'installe aussi par Homebrew, npm, Docker ou un chart Helm.
  • Une planification qui couvre les cas pénibles : cron avec fuseaux horaires, politique de chevauchement (ignorer, tout empiler ou ne garder que le dernier lancement), rattrapage des créneaux manqués pendant un arrêt, détection des exécutions bloquées. Un workflow peut aussi s'arrêter sur une validation ou une saisie d'opérateur, transmise aux étapes suivantes.
  • Des workers sans port entrant : en mode distribué, les workers interrogent le coordinateur en gRPC sortant et reçoivent le travail selon leurs étiquettes (gpu=true, région…). Des workers temporaires lancés par Cloud Run, Kubernetes ou une CI écrivent sur un volume partagé, sans coordinateur.
  • Des actions intégrées : requêtes HTTP, SFTP, PostgreSQL, SQLite, ClickHouse, Redis, S3, envoi et tri de mails, lecture et écriture de classeurs Excel, mais aussi un appel à un LLM ou le lancement d'un agent de code comme Claude Code ou Codex.
  • Un serveur MCP intégré : des clients MCP authentifiés inspectent workflows et exécutions, appliquent des modifications et pilotent les lancements, derrière la même authentification que l'API REST.

À savoir

Une alternative à cron et à Airflow. Le dépôt la revendique, pour les équipes « dont le travail principal n'est pas l'orchestration » : pas de base de métadonnées ni de workers Python à exploiter, et des scripts qui ne sont pas réécrits dans un framework. Les workflows s'écrivent en YAML. Pour relier des applications sans code, le comparatif des outils d'automatisation de workflows couvre n8n et Activepieces.

SSO, rôles et audit derrière une clé de licence. Le code sous GPL contient la connexion OIDC, cinq rôles (de admin à viewer) et les journaux d'audit, mais la page des tarifs les réserve aux licences payantes, et l'API vérifie la clé DAGU_LICENSE_KEY avant d'ouvrir les rôles et l'audit. L'offre Team coûte 50 $ par mois pour trois serveurs ; selon la même page, ni Team ni Pro n'incluent de support, réservé à l'offre Enterprise.

Des fichiers à la place d'une base. L'état vit dans des fichiers : sous Kubernetes, le chart Helm demande une StorageClass en ReadWriteMany, et les workers temporaires partagent un volume avec le serveur. Le README annonce des milliers d'exécutions par jour sur une seule machine, selon le matériel et la forme des workflows.

Un développeur principal, des versions chaque semaine. Le dépôt date d'avril 2022. La branche 2.x a publié 98 versions entre la 2.0.2 du 28 février 2026 et la 2.22.4 du 26 octobre, et un développeur signe 2 970 des 3 446 commits.

SOURCES

DÉPÔThttps://github.com/dagucloud/dagu
SITEhttps://dagu.sh
LICENCEGPL-3.0-or-later