Auto-hospedado · Binário único · Zero dependências

O motor de workflows que não vira um projeto de SRE.

Dagu é uma alternativa leve ao Airflow ou Cron com interface web. Defina DAGs em um formato YAML declarativo simples. Suporta comandos shell, contêineres Docker, jobs k8s, comandos remotos via SSH e muito mais. Foi projetado para ser fácil de usar, autocontido e não exigir programação, tornando-o ideal para equipes pequenas.

Dagu é feito para desenvolvedores que querem orquestração de workflows poderosa sem a sobrecarga operacional.

Linux
macOS
Windows
Docker
Kubernetes
Ver exemplos
Experimentar Demo
Credenciaisdemouser / demouser
dagu start-all --port 8080
Instalar o comando dagu
$curl -fsSL https://raw.githubusercontent.com/dagucloud/dagu/main/scripts/installer.sh | bash

Autocontido

Workflows são baseados em arquivos. Um binário, sem banco de dados ou broker externos. Pronto para ambientes air-gapped.

Orientado a CLI

Scripts shell, jobs Python, SQL, dbt, DuckDB, contêineres e runbooks rodam como etapas de pipeline sem alterações. Nenhum novo framework necessário.

Declarativo

Defina workflows em um formato YAML simples e declarativo. Você pode usar qualquer script ou ferramenta existente sem modificação.

Integração segura de agentes IA

Use seu agente IA favorito para criar, melhorar, depurar e executar workflows. O gerenciamento de segredos integrado oculta credenciais de logs e agentes, enquanto ainda permite que eles visualizem e executem tarefas com segurança. O registro completo de auditoria garante conformidade e visibilidade totais.

Configurar via MCP
workflow.yaml
# Runbook de produção controlado com entradas tipadas e revisão
name: "repair-customer-account"

params:
- name: customer_id
type: string
- name: change_scope
type: string
enum: ["metadata_only", "permissions"]
default: metadata_only
- name: dry_run
type: boolean
default: true

steps:
- id: inspect_account
run: ./scripts/inspect-account.sh --customer $${customer_id}
stdout:
artifact: reports/inspection.md

- id: review
action: noop
depends: [inspect_account]
approval:
prompt: "Review the inspection report before repair."

- id: repair_account
run: ./scripts/repair-account.sh --customer $${customer_id} --scope $${change_scope} --dry-run $${dry_run}
depends: [review]
stdout:
artifact: reports/repair.log

Trusted by developers at

1Password
Intel
MongoDB
Baidu
ByteDance
Canonical
Grab
Douban
Debian
NASA / JPL
Gitee
Plaid
Geodis
Aleno
Mambu
Audibene
NINAnor
RUBIX GmbH
cynkra
DataLad
dandi
QNIB Solutions
modoolar
TTT Studios
vital-software
m3dev
Build On Technologies
Dalibo
InfoInnova
infront-quant
gfx-labs
t54-labs
sajo
ANZX
1Password
Intel
MongoDB
Baidu
ByteDance
Canonical
Grab
Douban
Debian
NASA / JPL
Gitee
Plaid
Geodis
Aleno
Mambu
Audibene
NINAnor
RUBIX GmbH
cynkra
DataLad
dandi
QNIB Solutions
modoolar
TTT Studios
vital-software
m3dev
Build On Technologies
Dalibo
InfoInnova
infront-quant
gfx-labs
t54-labs
sajo
ANZX
1Password
Intel
MongoDB
Baidu
ByteDance
Canonical
Grab
Douban
Debian
NASA / JPL
Gitee
Plaid
Geodis
Aleno
Mambu
Audibene
NINAnor
RUBIX GmbH
cynkra
DataLad
dandi
QNIB Solutions
modoolar
TTT Studios
vital-software
m3dev
Build On Technologies
Dalibo
InfoInnova
infront-quant
gfx-labs
t54-labs
sajo
ANZX
NOW VIEWING · THE FLIGHT DECK
MAIN VIEWER // LIVE FEED

Gateway para agentes de IA

Gateway MCP para executar DAGs sem expor segredos

Um servidor MCP integrado permite que qualquer agente de IA gerencie seus DAGs de imediato. Sistemas privados ficam atrás de uma fronteira de segurança que exige segredos, e o Dagu os mascara automaticamente — então o agente nunca os vê.

Agente de IA

Solicita uma operação aprovada sem ver credenciais privadas.

Solicitar

Dagu MCP

Aplica controle de acesso granular antes de qualquer workflow rodar.

Autorizar

DAGs

Executa o script, contêiner, SQL, HTTP, SSH ou sub-workflow que você já confia.

Executar

Sistemas privados

Ferramentas e dados de produção ficam atrás do Dagu, não no contexto do agente.

ShellSQLSSH

Agentes solicitam uma ação de workflow nomeada via Dagu MCP em vez de receber credenciais de shell, banco de dados ou API.

O Dagu verifica acesso, injeta segredos apenas em runtime e pode pausar workflows sensíveis para aprovação humana.

Cada execução mantém logs, saídas, status, histórico e evidência de auditoria para humanos e agentes inspecionarem.

Acesso escopado

Exponha apenas as ações que cada agente tem permissão para executar.

Segredos gerenciados

Injete credenciais em runtime sem revelá-las ao agente.

Trilha de auditoria

Rastreie quem ou o que executou cada workflow e com quais entradas.

Aprovações

Pause operações de alto risco para revisão humana.

Resultados seguros

Retorne status e saídas sem abrir acesso bruto ao sistema.

O agente recebe uma ferramenta limitada. Seus sistemas privados mantêm segredos, logs, permissões e histórico operacional no Dagu.

O plano de controle em volta do trabalho real

O Dagu adiciona a camada operacional que scripts, ferramentas, runbooks e agentes de IA precisam em equipe.

Modelos de deployment

Execute uma instância auto-hospedada, use o servidor gerenciado do Dagu, ou combine o plano de controle na nuvem com workers privados em sua infraestrutura.

Comece em uma maquina. Escale para self-hosted, managed ou hybrid.

Local

Servidor unico

Execute `dagu start-all` em uma maquina com estado local baseado em arquivos. Sem database, broker ou platform stack.

Auto-hospedado

Sua infraestrutura

Mantenha Dagu server, workers, secrets, logs e execution dentro do seu proprio ambiente.

Dagu

Servidor totalmente gerenciado

Use um Dagu server dedicado operado pelo Dagu em uma instancia gVisor isolada no GKE.

Hibrido

Servidor gerenciado, execucao privada

Deixe o Dagu operar o server enquanto private workers executam Docker, private-network ou data-local steps.

Execução híbrida

Servidor Dagu gerenciado
Private worker via mTLS
Docker, private APIs, secrets e data-local work

Hybrid mantem o Dagu server gerenciado enquanto a execution que precisa da sua network, runtime ou data fica sob seu controle.

Funcionalidades de motor de workflow em produção

Funcionalidades de motor de workflow battle-tested permitem que você foque no valor central sem se preocupar com orquestração.

Desempenho

Execute milhares de workflows por dia em uma máquina, dependendo do hardware, do formato do workflow, da duração das etapas e das configurações de filas.

Execuções distribuídas

Use filas, limites de concorrência e workers distribuídos para controlar carga e espalhar jobs entre máquinas.

Notificações

Agendamentos recorrentes, catchup, execuções duráveis, timeouts, reexecuções, notificações e roteamento de incidentes para responsáveis.

Auth e RBAC

Gerenciamento de usuários, RBAC, workspaces, etapas de aprovação, gerenciamento de segredos integrado, chaves de API e webhooks.

Casos de uso reais

01

Automação de suporte ao cliente

Transforme requisições repetitivas em workflows de autoatendimento. As equipes de negócio os executam de forma independente. Os engenheiros ficam fora do processo.

02

Gestão de cron e scripts legados

Leve scripts shell, scripts Python, chamadas HTTP e jobs agendados existentes para o Dagu sem reescrevê-los.

03

Automação de Infraestrutura e Servidores

Coordene backups via SSH, limpezas, scripts de deploy, janelas de patch, pré-condições e hooks de ciclo de vida.

04

ETL e Operações de Dados

Execute consultas PostgreSQL ou SQLite, transferências S3, transformações jq, validações e sub-workflows reutilizáveis.

05

GitHub como interface. Sua infraestrutura como runtime.

Acione execuções do Dagu a partir de eventos do GitHub de issues e PRs via o managed Dagu GitHub App.

06

Workflows de Contêineres e Kubernetes

Componha workflows em que cada etapa pode executar uma imagem Docker, um Job Kubernetes, um comando shell ou uma validação.

07

Conversão de Mídia

Execute ffmpeg, extração de thumbnails, normalização de áudio, processamento de imagens e outros jobs pesados em workers.

08

Workflows IoT e Edge

Execute leitura de sensores, limpeza local, sincronização offline, health checks e manutenção em dispositivos pequenos.

09

Workflows com Agentes de IA

Execute qualquer harness para automatizar fluxos de trabalho de desenvolvimento específicos com contexto limpo e retry e failover automáticos.

Padrões comuns

Health Check
SSH Backup
Notify

Workflows de scripts privados

Transforme scripts privados, CLIs internos, actions reutilizáveis, ferramentas fixadas e artefatos em workflows que outras equipes podem solicitar ou executar com segurança.

  • 1Mantenha scripts e comandos existentes intactos
  • 2Exponha parâmetros estreitos em vez de amplo acesso à produção
  • 3Chame Dagu Actions versionadas com saídas tipadas
  • 4Guarde relatórios e logs como artefatos de primeira classe
workflow.yaml
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]

Parâmetros tipados

O Dagu os renderiza automaticamente como um formulário de entrada de parâmetros tipados na interface web, útil para criar workflows de autoatendimento ou operação por não-engenheiros.

workflow.yaml
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"])}

Para preparar ferramentas, o Dagu usa aqua como provedor padrão.

Agente de IA multiplayer no Slack

O agente de IA no Slack ajuda você a gerenciar seus workflows,depurar falhas e recuperar incidentes.

DaguDagu
Mensagem...

Funcionalidades completas de workflow

O Dagu está equipado com funcionalidades de motor de workflow de nível produção.

Amado pelos desenvolvedores

Comentários reais da comunidade GitHub do 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

#827

Dagu is really a gem in the open source world! ❤️ What a release — with GitHub Actions as well. Thanks guys.

@borestad

Elk Studios

#1313

Dagu is an amazing tool!! It works perfectly now, thank you so much! 💖

@jarnik

Freelance developer

#1294

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

#1814

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

#1130

I've recently played around with Dagu for private stuff and think it could also be worth introducing at work.

@DarkWiiPlayer

Developer

#924

Awesome, it works like a charm! I second the update of the doc on this one.

@thibmart1

Developer

#1320

That's very impressive. The exit code dictionary will make these DAGs even further sophisticated. Once again, very good features. 🫡

@ghansham

Developer

#1076

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

#827

Dagu is really a gem in the open source world! ❤️ What a release — with GitHub Actions as well. Thanks guys.

@borestad

Elk Studios

#1313

Dagu is an amazing tool!! It works perfectly now, thank you so much! 💖

@jarnik

Freelance developer

#1294

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

#1814

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

#1130

I've recently played around with Dagu for private stuff and think it could also be worth introducing at work.

@DarkWiiPlayer

Developer

#924

Awesome, it works like a charm! I second the update of the doc on this one.

@thibmart1

Developer

#1320

That's very impressive. The exit code dictionary will make these DAGs even further sophisticated. Once again, very good features. 🫡

@ghansham

Developer

#1076

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

#827

Dagu is really a gem in the open source world! ❤️ What a release — with GitHub Actions as well. Thanks guys.

@borestad

Elk Studios

#1313

Dagu is an amazing tool!! It works perfectly now, thank you so much! 💖

@jarnik

Freelance developer

#1294

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

#1814

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

#1130

I've recently played around with Dagu for private stuff and think it could also be worth introducing at work.

@DarkWiiPlayer

Developer

#924

Awesome, it works like a charm! I second the update of the doc on this one.

@thibmart1

Developer

#1320

That's very impressive. The exit code dictionary will make these DAGs even further sophisticated. Once again, very good features. 🫡

@ghansham

Developer

#1076

I love how simple this is now.

@n3storm

Estudio Nexos

#1593

Fantastic! Thanks for the quick reply — keep up the great project!

@mitchplze

Developer

#1359

Amazing support! Thank you!

@kacamific

Developer

#760

It works perfectly with v2.6.1. Thank you very much for the correction.

@napnap75

Developer

#1638

Thanks for the fix. Works great now.

@triole

Developer

#831

As always, appreciate the great work — just sharing feedback to help shape the roadmap.

@jonnochoo

Developer

#770

it's awesome you keep working on it 👍

@fishnux

Developer

#328

Thank you so much for the quick fix! I tested it, and it now correctly stores the files where it should.

@IngwiePhoenix

Developer

#423

I love how simple this is now.

@n3storm

Estudio Nexos

#1593

Fantastic! Thanks for the quick reply — keep up the great project!

@mitchplze

Developer

#1359

Amazing support! Thank you!

@kacamific

Developer

#760

It works perfectly with v2.6.1. Thank you very much for the correction.

@napnap75

Developer

#1638

Thanks for the fix. Works great now.

@triole

Developer

#831

As always, appreciate the great work — just sharing feedback to help shape the roadmap.

@jonnochoo

Developer

#770

it's awesome you keep working on it 👍

@fishnux

Developer

#328

Thank you so much for the quick fix! I tested it, and it now correctly stores the files where it should.

@IngwiePhoenix

Developer

#423

I love how simple this is now.

@n3storm

Estudio Nexos

#1593

Fantastic! Thanks for the quick reply — keep up the great project!

@mitchplze

Developer

#1359

Amazing support! Thank you!

@kacamific

Developer

#760

It works perfectly with v2.6.1. Thank you very much for the correction.

@napnap75

Developer

#1638

Thanks for the fix. Works great now.

@triole

Developer

#831

As always, appreciate the great work — just sharing feedback to help shape the roadmap.

@jonnochoo

Developer

#770

it's awesome you keep working on it 👍

@fishnux

Developer

#328

Thank you so much for the quick fix! I tested it, and it now correctly stores the files where it should.

@IngwiePhoenix

Developer

#423

Quickstart

Instale o Dagu com o assistente guiado e depois siga para o guia completo de instalação ou para o quickstart.

1

Instalar o comando dagu

Os instaladores por script sao o caminho recomendado. Homebrew, npm e Docker continuam disponiveis, mas fazem apenas a instalacao do binario ou do conteiner.

Mac/Linux Terminal
$curl -fsSL https://raw.githubusercontent.com/dagucloud/dagu/main/scripts/installer.sh | bash
✓ Instalador guiado pronto
Opcional

Conecte ferramentas de IA

Instale o skill do Dagu para autoria de workflows, ou conecte um cliente MCP a um servidor Dagu em execução.

Skill do Dagu
$gh skill install dagucloud/dagu dagu

Ajuda Claude Code, Codex, Gemini CLI e outras ferramentas de programação com IA a escrever YAML do Dagu.

Endpoint MCP do Dagu
URLhttp://localhost:8080/mcp

Permite que clientes compatíveis com MCP leiam o estado do Dagu, visualizem mudanças e controlem execuções DAG.

O acesso MCP com OIDC/SSO está disponível para implantações empresariais. Entre em contato para discutir a configuração.

2

Próximos passos

O instalador guiado pode concluir a configuração inicial para você.

# O que o instalador pode fazer
Adicionar Dagu ao PATH
Configurar um serviço em segundo plano
Criar e verificar o primeiro administrador

Comunidade do projeto

Discuta uso, reporte issues e acompanhe o desenvolvimento.

Parceiro de soluções

Suporte de parceiro de soluções para projetos de clientes

Para equipes que incorporam o Dagu em produtos voltados ao cliente, plataformas internas ou serviços gerenciados, oferecemos recursos enterprise e suporte prático de integração.

Ajudamos parceiros a desenhar o modelo de segurança, o caminho de integração e o plano operacional para que o Dagu se encaixe bem em projetos de clientes sem conceder amplo acesso à produção.

Entrar em contato

Enterprise OIDC/SSO e controle de acesso

Suporte MCP para workflows de agentes e clientes

Revisão de arquitetura para implantações self-hosted, gerenciadas ou híbridas

Configuração de private workers, segredos e execução dentro da rede

Migração de scripts e runbooks para workflows voltados ao cliente

Suporte dedicado da entrega do projeto ao lançamento em produção