Command workflows
شغّل workflows الإنتاجية من دون منصة ثقيلة.
يحوّل Dagu سكربتات shell والحاويات ومهام SSH ونداءات HTTP وواجهات agent CLI إلى workflows بصيغة YAML مع retries وlogs وqueues وWeb UI.
name: nightly-ops
schedule: "0 2 * * *"
steps:
- id: extract
run: python scripts/extract.py
- id: transform
run: ./bin/transform
retry_policy:
limit: 3
depends: [extract]
- id: notify
run: ./scripts/slack-success.sh
depends: [transform]ملف ثنائي self-hosted واحد
من دون قاعدة بيانات أو broker خارجي
YAML واضح وسهل المراجعة في Git
تنفيذ محلي وبالطوابير وبشكل موزع
At a glance
لماذا تختار الفرق Dagu
ملف ثنائي واحد وملفات محلية.
غالباً ما تحتاج إلى قاعدة بيانات وbroker وwebserver وscheduler.
YAML يستدعي الأوامر التي تستخدمها بالفعل.
كثير من المحركات تفرض SDK أو framework محدداً.
يمكن البدء بسكربت واحد فقط.
غالباً يلزم migration كبير قبل الحصول على قيمة حقيقية.
In depth
Where each tool fits
مصمم للعمل التشغيلي الحقيقي
معظم الفرق لا تحتاج إلى منصة بيانات ثقيلة، بل تحتاج إلى ترتيب dependencies وretries والتقاط المخرجات والتاريخ وإعادة التشغيل بسهولة.
- جدولة السكربتات الحالية من دون إعادة كتابتها
- الاحتفاظ بالتعريفات في YAML سهل المراجعة
- البدء على جهاز واحد ثم إضافة workers لاحقاً
Runtime صغير وتحكم جاد
يحافظ Dagu على runtime بسيط ويقدم في الوقت نفسه عناصر التحكم التي تحتاجها الوظائف المهمة.
- Retries وdependencies وtimeouts وlogs وتاريخ الحالة
- Web UI للفحص والتشغيل اليدوي
- تنفيذ أوامر وDocker وHTTP وSSH وSubDAGs ووكلاء الذكاء الاصطناعي
ملائم بشكل طبيعي لوكلاء الذكاء الاصطناعي
وكلاء الذكاء الاصطناعي يعملون في النهاية عبر أوامر. يضيف Dagu فوقها الجدولة والاعتمادات وretries وإمكانية التدقيق.
- شغّل Claude وCodex وGemini كخطوات في الـ workflow
- أضف approval وvalidation حول مخرجات الوكيل
- بدّل النموذج من دون تغيير طبقة orchestration
FAQ
Practical questions before adopting Dagu
ما الذي يجعل Dagu خفيفاً؟
يعمل Dagu كملف ثنائي self-hosted واحد ويخزن الحالة في ملفات محلية. لا تحتاج إلى قاعدة بيانات أو broker أو control plane منفصل للبدء.
هل يمكنه تشغيل السكربتات الحالية؟
نعم. يمكن لخطوة Dagu تشغيل shell وbinaries وDocker وHTTP وSSH من دون إعادة كتابة التطبيق.
هل هو مخصص للمهام المحلية فقط؟
لا. يمكنك البدء محلياً ثم التوسع إلى التنفيذ عبر queues أو وضع coordinator-worker.
Next step
Start with one workflow.
Install Dagu, move one fragile script or agent task into YAML, and decide from a real run history.