AI-workflows в production

Переводите AI-workflows из разработки в production без общего окружения.

Запускайте разработку, staging и production в отдельных инстансах Dagu. Продвигайте через Git только проверенные определения workflow, а credentials, workers, историю, правила доступа и маршруты инцидентов храните отдельно в каждом инстансе.

agent-workflow.yaml
name: release-review

steps:
  - id: collect_context
    run: ./scripts/collect-context.sh
    output: CONTEXT

  - id: draft
    action: harness.run
    with:
      provider: codex
      prompt: |
        Review this release:
        ${steps.collect_context.outputs.CONTEXT}
    retry_policy:
      limit: 2
    approval:
      prompt: Review the agent output before release
      rewind_to: collect_context
    depends: [collect_context]

  - id: publish
    run: ./scripts/publish.sh
    depends: [draft]

Отдельный инстанс Dagu для каждого окружения

Продвижение workflows после Git review

Approvals, retries, логи, метрики и трассировки

Slack, PagerDuty и авторизованное восстановление через MCP

Архитектура окружений

Git продвигает определения. Отдельные инстансы обеспечивают изоляцию.

Workspace для разработки внутри одного сервера не является границей production. Выделите каждому окружению собственный сервер Dagu, хранилище, credentials, workers и сетевой доступ. Настройте Git Sync каждого инстанса на ветку, одобренную для этого окружения.

01

Разработка

ветка development

Создавайте, запускайте, отлаживайте и публикуйте изменения workflows с сервисами и credentials разработки.

Публикация разрешена

Продвижение через pull request
02

Staging

ветка staging

Загружайте проверенные определения в изолированный инстанс и проверяйте их со staging-зависимостями.

Git Sync только для чтения

Продвижение через pull request
03

Production

защищенная ветка main

Запускайте только продвинутые ревизии с production credentials, политиками, телеметрией и маршрутизацией инцидентов.

Git Sync только для чтения

Production-контроль

Окружите недетерминированную работу детерминированным контролем.

Модель или runtime агента можно заменить без изменения эксплуатационного контракта. Dagu делает окружающий путь выполнения явным, проверяемым и восстанавливаемым.

Версионируйте workflow

Храните определения DAG и skills для создания workflows в Git, проверяйте diff и продвигайте известную ревизию между окружениями.

Контролируйте побочные эффекты

Приостанавливайте workflow после результата агента, собирайте комментарии и разрешайте, отклоняйте или возвращайте работу до production-действия.

Ограничивайте сбои

Используйте зависимости, таймауты, ограниченные retries, очереди и контроль параллелизма вместо бесконечной prompt-логики.

Проверяйте результат

Запускайте детерминированные тесты, проверки политик и внешние evaluation-команды как обычные шаги до approval или публикации.

Наблюдайте за выполнением

Проверяйте историю, логи и artifacts; экспортируйте метрики в Prometheus и трассировки DAG/шагов через OpenTelemetry.

Управляйте восстановлением

Оповещайте операторов, открывайте инциденты после исчерпания retries и разрешайте авторизованным MCP-клиентам исследовать и восстанавливать runs.

Продвижение через Git

Production должен получать изменения из Git, а не из локальных правок.

Разработка может публиковать изменения. Для staging и production обычно задают `push_enabled: false`, защищенные ветки и загрузку только проверенных определений. Для staging удобен автоматический pull; production может автоматически читать защищенную ветку или выполнять контролируемый pull после одобрения deployment.

Git Sync отслеживает файлы DAG и skills для создания workflows. Secrets, конфигурация сервера, хранилище, история runs, workers и сетевой доступ остаются локальными для каждого инстанса Dagu.

production config.yaml
git_sync:
  enabled: true
  repository: github.com/acme/ai-workflows
  branch: main
  push_enabled: false

  auth:
    type: token
    token: ${GITHUB_TOKEN}

  auto_sync:
    enabled: true
    on_startup: true
    interval: 300

Сбой и восстановление

Превратите сбой агента в эксплуатационный процесс.

Dagu разделяет обычные уведомления и жизненный цикл инцидентов, а затем предоставляет MCP-клиентам аутентифицированные операции с workflow.

  1. 01

    Workflow или шаг агента завершается с ошибкой, после чего выполняются настроенные retries.

  2. 02

    После исчерпания retries Dagu отправляет окончательный сбой в настроенные маршруты Slack.

  3. 03

    Маршрутизация PagerDuty может открыть или обновить один дедуплицированный инцидент для сбойного workflow.

  4. 04

    Авторизованный MCP-клиент читает run и логи, предварительно проверяет изменение DAG и повторяет или останавливает run через инструменты Dagu.

  5. 05

    Последующий успешный run закрывает открытый инцидент, если маршрут провайдера остается идентифицируемым.

Точные границы

Что предоставляет Dagu, а что должно находиться в другом слое.

Dagu — это слой управления workflow вокруг AI-системы. Ясные границы делают архитектуру безопаснее, а обещание production-ready — полезнее.

Dagu предоставляетГраница
Изоляция окруженийНезависимые серверы, хранилища, credentials, workers, правила доступа и настройки инцидентов плюс Git Sync для определений.Workspaces и runtime profiles в одном инстансе не заменяют жесткую изоляцию окружений.
Наблюдаемость workflowСтатусы runs и шагов, логи, artifacts, история, метрики Prometheus и трассировки DAG/шагов OpenTelemetry.Трассировки prompts, токены, стоимость и семантическое качество должны измеряться агентом или evaluation-стеком.
Evaluation и guardrailsГраф для детерминированных валидаторов, внешних evaluation-команд, approvals и ограниченных retries.Dagu не определяет, является ли ответ LLM фактически верным или безопасным для конкретной области.
Безопасность и реагированиеАутентифицированные операции, API keys с ограниченным scope, уведомления, MCP-контроль и маршрутизация провайдеров инцидентов.Audit logging и интеграции инцидентов в self-hosted требуют действующей лицензии или trial; managed Dagu включает их.

FAQ

Практические вопросы перед production

Следует ли использовать один сервер Dagu для разработки, staging и production?

Нет, если важна изоляция. Запускайте отдельные инстансы, чтобы credentials, хранилище, workers, сеть, логи и политики не делили одну эксплуатационную границу. Определения продвигайте через Git Sync.

Копирует ли Git Sync production secrets или историю runs?

Нет. Git Sync синхронизирует с репозиторием DAG-файлы и skills для создания workflows. Secrets, конфигурация, хранилище, история и workers остаются в каждом инстансе.

Может ли Dagu определить правильность ответа агента?

Не самостоятельно. Dagu может запустить ваши тесты или evaluation-инструменты как шаги и остановить следующий этап по их результату, но логика оценки принадлежит этим инструментам и экспертам предметной области.

Что может MCP-клиент во время инцидента?

С учетом аутентификации и прав Dagu он может исследовать DAG, runs и логи; предварительно проверять или применять валидные изменения DAG; запускать, ставить в очередь, повторять, останавливать и отслеживать runs.

Следующий шаг

Сначала выведите в production один agent workflow.

Поместите существующую команду агента в DAG Dagu, проверьте результат, добавьте approval boundary и продвигайте одно проверенное определение через изолированные development, staging и production инстансы.