Local
Serveur unique
Executez `dagu start-all` sur une machine avec un etat local sur fichiers. Aucune base, aucun broker, aucun platform stack requis.
La plupart des équipes finissent avec des tâches cron que personne ne peut vraiment expliquer. Quand l'une d'elles casse, comprendre ce qui a échoué et dans quel ordre relancer prend plus de temps que prévu. Dagu transforme ce graphe de dépendances implicites en un DAG explicite. Le statut, les logs et les relances sont dans une interface web. Un seul binaire, des fichiers locaux, les scripts existants restent intacts.
Conçu pour les développeurs qui veulent une orchestration de workflows puissante sans la surcharge opérationnelle.
Les workflows sont basés sur des fichiers. Un binaire, sans base de données ni broker externe. Prêt pour les environnements air-gapped.
Scripts shell, jobs Python, SQL, dbt, DuckDB, containers et runbooks s'exécutent comme étapes de pipeline sans modification. Pas de nouveau framework nécessaire.
Utilisez votre agent IA favori pour créer, améliorer, déboguer et exécuter des workflows. La gestion secrète intégrée cache les identifiants des logs et des agents, tout en leur permettant de prévisualiser et d'exécuter les tâches en toute sécurité. La journalisation complète des audits garantit conformité et visibilité.
Configurer via MCP →Trusted by developers at
Dagu ajoute aux scripts, outils, runbooks et agents IA la couche opérationnelle qui manque aux équipes.
Suivez workflows, plannings, état en direct, logs, historique, sorties, artefacts et validations dans la Web UI.
Exécutez commandes shell, scripts Python, conteneurs, Kubernetes Jobs, requêtes SQL, appels HTTP, commandes SSH et plus encore.
Épinglez les outils dans le YAML du workflow pour que les workers installent et mettent en cache les binaires attendus avant exécution.
Exécutez des agents IA partagés dans les workflows et exposez les workflows aux agents comme outils bornés et observables.
Mettez en pause les étapes sensibles pour revue, confirmation ou intervention humaine avant de poursuivre.
Permettez aux agents compatibles MCP d’inspecter l’état Dagu, prévisualiser les changements, éditer les workflows et contrôler les runs.
Exécutez coding agents et CLIs d’agents depuis les workflows tout en gardant logs, validations, secrets et audit history dans Dagu.
Injectez des secrets dans les runs et masquez les valeurs sensibles dans les logs pour utilisateurs, agents et outils de chat.
Lancez un binaire unique, déployez avec conteneurs ou Kubernetes, ou utilisez des modèles managed et hybrides.
Gouvernez l’accès aux workflows avec RBAC, SSO, API keys, contrôles de workspace et logs d’audit.
Modeles de deploiement
Exécutez une instance auto-hébergée, utilisez le serveur géré Dagu, ou combinez le plan de contrôle cloud avec des workers privés dans votre infrastructure.
Local
Executez `dagu start-all` sur une machine avec un etat local sur fichiers. Aucune base, aucun broker, aucun platform stack requis.
Auto-heberge
Gardez le Dagu server, les workers, les secrets, les logs et l'execution dans votre propre environnement.
Dagu
Utilisez un Dagu server dedie opere par Dagu dans une instance gVisor isolee sur GKE.
Hybride
Laissez Dagu operer le serveur pendant que des private workers executent les steps Docker, reseau prive ou data-local.
Exécution hybride
Hybrid garde le Dagu server managed pendant que l'execution qui a besoin de votre reseau, runtime ou data reste sous votre controle.
Des fonctionnalités de moteur de workflow éprouvées vous permettent de vous concentrer sur la valeur essentielle sans vous soucier de l'orchestration.
Exécutez des milliers de workflows par jour sur une machine, selon le matériel, la forme du workflow, la durée des étapes et les paramètres de files.
Utilisez files d'attente, limites de concurrence et workers distribués pour contrôler la charge et répartir les jobs entre machines.
Planifications récurrentes, rattrapage, exécutions durables, délais d'attente, relances, notifications et routage des incidents vers les responsables.
Gestion des utilisateurs, RBAC, espaces de travail, étapes d'approbation, gestion des secrets intégrée, clés API et webhooks.
Transformez les demandes récurrentes en workflows en libre-service. Les équipes métier les exécutent de manière autonome. Les ingénieurs restent en dehors.
Amenez vos scripts shell, scripts Python, appels HTTP et jobs planifiés existants dans Dagu sans les réécrire.
Coordonnez sauvegardes SSH, nettoyages, scripts de déploiement, fenêtres de patch, préconditions et hooks de cycle de vie.
Exécutez requêtes PostgreSQL ou SQLite, transferts S3, transformations jq, validations et sous-workflows réutilisables.
Déclenchez des exécutions Dagu depuis des événements GitHub provenant d'issues et de PR via l'application GitHub Dagu gérée.
Composez des workflows où chaque étape peut lancer une image Docker, un Job Kubernetes, une commande shell ou une validation.
Exécutez ffmpeg, extraction de vignettes, normalisation audio, traitement d’images et autres jobs lourds sur des workers.
Exécutez collecte capteur, nettoyage local, synchronisation hors ligne, health checks et maintenance sur de petits appareils.
Exécutez n'importe quel harness pour automatiser certains workflows de développement avec un contexte propre et des mécanismes automatiques de retry et de failover.
Transformez scripts privés, CLIs internes, actions réutilisables, outils épinglés et artefacts en workflows que d’autres équipes peuvent demander ou exécuter en sécurité.
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}' ${collect.outputs.path}
stdout:
artifact: reports/customers.json
depends: [collect]
- id: publish
action: outputs.write
with:
values:
report: reports/customers.json
rows: ${collect.outputs.rows}
depends: [transform]
Dagu les affiche automatiquement sous forme de formulaire de saisie de paramètres typés dans l'interface web, utile pour créer des workflows en libre-service ou permettre leur utilisation par des non-ingénieurs.
tools:
- jqlang/jq@jq-1.7.1
steps:
- id: inspect
run: jq --version
- id: summarize
action: python-script@v1
with:
input:
rows: [42, 8]
script: |
return {"total": sum(input["rows"])}
Pour préparer les outils, Dagu utilise aqua par défaut.
Déclarez les outils CLI et leurs versions en YAML. Dagu les prépare avant les étapes de commande hôte.
En savoir plusUtilisez des Dagu Actions officielles comme Python ou NodeJS, ou créez votre propre package d'actions pour exécuter votre workflow avec les outils et dépendances nécessaires.
En savoir plusGérez les artefacts dans les exécutions de DAG et prévisualisez / téléchargez-les dans l'interface web.
En savoir plusConfigurez les notifications pour chaque workflow afin que les événements nécessaires atteignent le bon canal.
En savoir plusL'agent IA dans Slack vous aide à gérer vos workflows,
déboguer les pannes et résoudre les incidents.
Dagu est équipé de fonctionnalités de moteur de workflow de niveau production.
Vrais commentaires de la communauté GitHub 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
Dagu is really a gem in the open source world! ❤️ What a release — with GitHub Actions as well. Thanks guys.
@borestad
Elk Studios
Dagu is an amazing tool!! It works perfectly now, thank you so much! 💖
@jarnik
Freelance 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
Amazing! I did not expect this to be delivered that fast! Multiple schedulers do not compete and the locking mechanism works as expected. Good job!
@jonasban
Developer
I've recently played around with Dagu for private stuff and think it could also be worth introducing at work.
@DarkWiiPlayer
Developer
Awesome, it works like a charm! I second the update of the doc on this one.
@thibmart1
Developer
That's very impressive. The exit code dictionary will make these DAGs even further sophisticated. Once again, very good features. 🫡
@ghansham
Developer
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
Dagu is really a gem in the open source world! ❤️ What a release — with GitHub Actions as well. Thanks guys.
@borestad
Elk Studios
Dagu is an amazing tool!! It works perfectly now, thank you so much! 💖
@jarnik
Freelance 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
Amazing! I did not expect this to be delivered that fast! Multiple schedulers do not compete and the locking mechanism works as expected. Good job!
@jonasban
Developer
I've recently played around with Dagu for private stuff and think it could also be worth introducing at work.
@DarkWiiPlayer
Developer
Awesome, it works like a charm! I second the update of the doc on this one.
@thibmart1
Developer
That's very impressive. The exit code dictionary will make these DAGs even further sophisticated. Once again, very good features. 🫡
@ghansham
Developer
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
Dagu is really a gem in the open source world! ❤️ What a release — with GitHub Actions as well. Thanks guys.
@borestad
Elk Studios
Dagu is an amazing tool!! It works perfectly now, thank you so much! 💖
@jarnik
Freelance 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
Amazing! I did not expect this to be delivered that fast! Multiple schedulers do not compete and the locking mechanism works as expected. Good job!
@jonasban
Developer
I've recently played around with Dagu for private stuff and think it could also be worth introducing at work.
@DarkWiiPlayer
Developer
Awesome, it works like a charm! I second the update of the doc on this one.
@thibmart1
Developer
That's very impressive. The exit code dictionary will make these DAGs even further sophisticated. Once again, very good features. 🫡
@ghansham
Developer
I love how simple this is now.
@n3storm
Estudio Nexos
Fantastic! Thanks for the quick reply — keep up the great project!
@mitchplze
Developer
Amazing support! Thank you!
@kacamific
Developer
It works perfectly with v2.6.1. Thank you very much for the correction.
@napnap75
Developer
Thanks for the fix. Works great now.
@triole
Developer
As always, appreciate the great work — just sharing feedback to help shape the roadmap.
@jonnochoo
Developer
it's awesome you keep working on it 👍
@fishnux
Developer
Thank you so much for the quick fix! I tested it, and it now correctly stores the files where it should.
@IngwiePhoenix
Developer
I love how simple this is now.
@n3storm
Estudio Nexos
Fantastic! Thanks for the quick reply — keep up the great project!
@mitchplze
Developer
Amazing support! Thank you!
@kacamific
Developer
It works perfectly with v2.6.1. Thank you very much for the correction.
@napnap75
Developer
Thanks for the fix. Works great now.
@triole
Developer
As always, appreciate the great work — just sharing feedback to help shape the roadmap.
@jonnochoo
Developer
it's awesome you keep working on it 👍
@fishnux
Developer
Thank you so much for the quick fix! I tested it, and it now correctly stores the files where it should.
@IngwiePhoenix
Developer
I love how simple this is now.
@n3storm
Estudio Nexos
Fantastic! Thanks for the quick reply — keep up the great project!
@mitchplze
Developer
Amazing support! Thank you!
@kacamific
Developer
It works perfectly with v2.6.1. Thank you very much for the correction.
@napnap75
Developer
Thanks for the fix. Works great now.
@triole
Developer
As always, appreciate the great work — just sharing feedback to help shape the roadmap.
@jonnochoo
Developer
it's awesome you keep working on it 👍
@fishnux
Developer
Thank you so much for the quick fix! I tested it, and it now correctly stores the files where it should.
@IngwiePhoenix
Developer
Installez Dagu avec l’assistant guidé, puis continuez avec le guide d’installation complet ou le quickstart.
Les scripts d'installation sont le chemin recommande. Homebrew, npm et Docker restent disponibles, mais ils n'installent que le binaire ou le conteneur.
Installez le skill Dagu pour créer des workflows, ou connectez un client MCP à un serveur Dagu en cours d'exécution.
Aide Claude Code, Codex, Gemini CLI et d'autres outils de codage IA à écrire du YAML Dagu.
Permet aux clients compatibles MCP de lire l'état de Dagu, de prévisualiser les changements et de contrôler les exécutions DAG.
L'accès MCP avec OIDC/SSO est disponible pour les déploiements entreprise. Contactez-nous pour en discuter.
L’installateur guidé peut terminer la configuration du premier lancement pour vous.
Discuter des usages, signaler des issues et suivre le développement.
Partenaire solutions
Pour les équipes qui intègrent Dagu dans des produits clients, des plateformes internes ou des services managés, nous fournissons des fonctionnalités enterprise et un accompagnement d'intégration concret.
Nous aidons les partenaires à concevoir le modèle de sécurité, le parcours d'intégration et le plan d'exploitation pour que Dagu s'insère proprement dans les projets clients sans donner un accès production trop large.