Client MCP
Demande une opération approuvée sans recevoir d’identifiants privés.
Dagu est une alternative légère à Airflow ou Cron, dotée d'une interface web. Définissez vos DAG dans un format YAML déclaratif simple. Il prend en charge les commandes shell, les conteneurs Docker, les jobs k8s, les commandes distantes via SSH et bien plus. Il a été conçu pour être facile à utiliser, autonome et sans aucun code, ce qui le rend idéal pour les petites équipes. 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.
Définissez des workflows dans un format YAML simple et déclaratif. Vous pouvez utiliser n'importe quel script ou outil existant sans modification.
Utilisez des clients compatibles MCP pour créer, améliorer, déboguer et exécuter des workflows, et lancez des étapes Agent Harness dans les workflows. Les secrets sont injectés à l’exécution et masqués dans les logs; ils ne sont pas transmis aux clients MCP. Chaque action est journalisée pour la conformité.
Configurer via MCP →Trusted by developers at
Les clients compatibles MCP autorisés peuvent inspecter et demander des opérations DAG via Dagu. Les systèmes privés restent derrière une frontière de sécurité: Dagu injecte les identifiants à l’exécution et ne les transmet pas au client MCP.
Demande une opération approuvée sans recevoir d’identifiants privés.
Applique un contrôle d’accès granulaire avant toute exécution de workflow.
Exécute le script, conteneur, SQL, HTTP, SSH ou sous-workflow que vous approuvez déjà.
Les outils et données de production restent derrière Dagu, pas dans le contexte client.
Les clients compatibles MCP demandent des actions de workflow nommées via Dagu MCP au lieu de recevoir des identifiants shell, base de données ou API.
Dagu vérifie les accès, injecte les secrets uniquement à l’exécution et peut suspendre les workflows sensibles pour approbation humaine.
Chaque run conserve logs, sorties, statut, historique et preuves d’audit pour les humains et les clients MCP.
N’expose que les actions que chaque client MCP est autorisé à lancer.
Injecte les identifiants à l’exécution sans les transmettre au client MCP.
Suit qui ou quoi a demandé chaque workflow et avec quelles entrées.
Suspendez les opérations sensibles pour revue humaine.
Retourne le statut et les sorties sans ouvrir d’accès brut au système.
L'agent reçoit un outil borné. Vos systèmes privés gardent les secrets, logs, permissions et historique opérationnel dans Dagu.
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.
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}' ${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 est équipé de fonctionnalités de moteur de workflow de niveau production.
Vrais commentaires de la communauté GitHub Dagu.
Ces derniers temps, je cherchais une alternative pour des workflows d'agents dynamiques. J'ai d'abord suivi la piste Temporal. Temporal est puissant, mais si on veut seulement enchaîner dynamiquement des agents, des scripts, du traitement de données et des tâches d'exploitation, l'ensemble peut sembler un peu lourd. Puis je suis tombé sur Dagu, et la direction m'a paru juste. Un seul binaire suffit, les workflows s'écrivent en YAML, tout est géré en fichiers locaux, une interface web est incluse, et pas besoin de monter une DB ou un broker en plus. Les actions intégrées sont nombreuses : shell, Docker, K8s Jobs, SSH — tout y est. Belle surprise : harness.run, qui permet de brancher des CLI de coding agents externes directement dans le workflow. Ce que j'aime : le workflow est lui-même un fichier, et l'état, les logs, les reprises, les dépendances et l'interface sont pris en charge pour vous. Pour les petites équipes, les environnements privés, l'automatisation personnelle et les workflows d'agents, l'approche local-first de Dagu est franchement confortable.
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
Dagu reste open source. Minimum inclut 3 licences serveur self-host ; Pro en inclut 15. Chaque licence couvre un serveur Dagu, avec workers illimités.
3 licences serveur Dagu self-host
15 licences serveur Dagu self-host
Créer une licence d’essai self-host de 14 jours en quelques minutes
Sans carte bancaire
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.
N'hésitez pas à nous contacter pour des demandes professionnelles, des questions ou des retours. Nous serions ravis d'avoir de vos nouvelles.