Development
development branch
Development services और credentials के साथ workflow changes बनाएँ, चलाएँ, debug करें और publish करें।
Publish enabled
Production AI workflows
Development, staging और production को अलग Dagu instances में चलाएँ। Git के जरिए केवल reviewed workflow definitions promote करें, जबकि credentials, workers, history, access policy और incident routes हर instance में अलग रहें।
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]
हर environment के लिए अलग Dagu instance
Git review के बाद workflow promotion
Approvals, retries, logs, metrics और traces
Slack, PagerDuty और authenticated MCP recovery
Environment architecture
एक shared server के भीतर development workspace production boundary नहीं है। हर environment को अपना Dagu server, storage, credentials, workers और network access दें। हर instance के Git Sync को उस environment के approved branch से जोड़ें।
development branch
Development services और credentials के साथ workflow changes बनाएँ, चलाएँ, debug करें और publish करें।
Publish enabled
staging branch
Reviewed definitions को isolated instance में pull करें और staging dependencies के साथ validate करें।
Read-only Git Sync
protected main branch
केवल promoted revisions को production-only credentials, policies, telemetry और incident routing के साथ चलाएँ।
Read-only Git Sync
Production controls
Model या agent runtime बदल सकता है, पर operational contract वही रह सकता है। Dagu execution path को explicit, reviewable और recoverable रखता है।
DAG definitions और workflow-authoring skills को Git में रखें, diffs review करें और environments के बीच ज्ञात revision promote करें।
Agent output के बाद pause करें, reviewer input लें और production action से पहले approve, reject या workflow को वापस भेजें।
बिना सीमा वाली prompt glue के बजाय dependencies, timeouts, capped retries, queues और concurrency controls इस्तेमाल करें।
Approval या publishing से पहले deterministic tests, policy checks या external evaluation commands को सामान्य workflow steps की तरह चलाएँ।
Run history, logs और artifacts देखें; Prometheus में metrics और OpenTelemetry से DAG/step traces export करें।
Operators को notify करें, retries खत्म होने पर incidents खोलें और authorized MCP clients को runs inspect तथा recover करने दें।
Git-based promotion
Development changes publish कर सकता है। Staging और production में सामान्यतः `push_enabled: false` रखें, protected branches follow करें और केवल reviewed definitions pull करें। Staging में automatic pull उपयोगी है; production protected branch को auto-pull कर सकता है या deployment approval के बाद controlled pull कर सकता है।
Git Sync DAG files और workflow-authoring skills track करता है। Secrets, server configuration, storage, run history, workers और network access हर Dagu instance में local रहते हैं।
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
Failure और recovery
Dagu सामान्य notifications को incident lifecycle management से अलग रखता है और MCP clients को authenticated workflow operations देता है।
Workflow या agent step fail होता है और configured retries चलते हैं।
Retry budget खत्म होने पर Dagu final failure को configured Slack routes पर भेजता है।
PagerDuty routing failing workflow के लिए एक deduplicated incident खोल या update कर सकती है।
Authorized MCP client run और logs पढ़ता है, DAG change preview करता है और Dagu tools से run retry या stop करता है।
बाद का सफल run provider route की पहचान बने रहने पर खुले incident को resolve करता है।
सटीक सीमाएँ
Dagu AI system के चारों ओर workflow control layer है। स्पष्ट सीमाएँ architecture को सुरक्षित और production claim को उपयोगी बनाती हैं।
| Dagu देता है | सीमा | |
|---|---|---|
| Environment separation | अलग servers, storage, credentials, workers, access policy और incident configuration, definitions के लिए Git Sync सहित। | एक instance के भीतर workspaces और runtime profiles hard environment isolation का विकल्प नहीं हैं। |
| Workflow observability | Run और step status, logs, artifacts, history, Prometheus metrics और OpenTelemetry DAG/step traces। | Prompt traces, token और cost telemetry तथा semantic output quality agent या evaluation stack को emit या measure करनी होगी। |
| Evaluation और guardrails | Deterministic validators, external evaluation commands, approvals और bounded retries के लिए graph। | Dagu यह तय नहीं करता कि LLM का उत्तर तथ्यात्मक रूप से सही या किसी domain के लिए सुरक्षित है। |
| Security और incident response | Authenticated operations, scoped API keys, notifications, MCP controls और incident-provider routing। | Self-hosted audit logging और incident integrations के लिए active license या trial चाहिए; managed Dagu में ये शामिल हैं। |
FAQ
Isolation जरूरी हो तो नहीं। अलग Dagu instances चलाएँ ताकि credentials, storage, workers, network, logs और policies एक operational boundary साझा न करें। Definitions को Git Sync से promote करें।
नहीं। Git Sync DAG files और workflow-authoring skills को repository के साथ align करता है। Secrets, configuration, storage, run history और workers हर instance में local रहते हैं।
अकेले नहीं। Dagu deterministic tests या evaluation tools को steps की तरह चला सकता है और उनके परिणाम के आधार पर अगला action gate कर सकता है, लेकिन evaluation logic उन tools और domain reviewers की जिम्मेदारी है।
Dagu authentication और authorization के अधीन, वह DAGs, runs और logs inspect कर सकता है; validated DAG changes preview या apply कर सकता है; और runs start, enqueue, retry, stop या follow कर सकता है।
अगला कदम
किसी मौजूदा agent command को Dagu DAG में रखें, उसका output validate करें, approval boundary जोड़ें और उसी reviewed definition को isolated development, staging और production instances में promote करें।