---
read_when:
    - أنت تريد مهام مجدولة وتنبيهات استيقاظ
    - أنت تقوم بتصحيح تنفيذ Cron والسجلات الخاصة به
summary: مرجع CLI لـ `openclaw cron` (جدولة المهام الخلفية وتشغيلها)
title: Cron
x-i18n:
    generated_at: "2026-04-26T11:25:38Z"
    model: gpt-5.4
    provider: openai
    source_hash: 55cadcf73550367d399b7ca78e842f12a8113f2ec8749f59dadf2bbb5f8417ae
    source_path: cli/cron.md
    workflow: 15
---

# `openclaw cron`

إدارة مهام Cron لجدولة Gateway.

ذو صلة:

- مهام Cron: [مهام Cron](/ar/automation/cron-jobs)

نصيحة: شغّل `openclaw cron --help` للحصول على سطح الأوامر الكامل.

ملاحظة: يعرض `openclaw cron list` و`openclaw cron show <job-id>` معاينة لمسار التسليم بعد حله.
بالنسبة إلى `channel: "last"`، توضح المعاينة ما إذا كان المسار قد حُلّ من الجلسة الرئيسية/الحالية أو أنه سيفشل بشكل مغلق.

ملاحظة: تستخدم مهام `cron add` المعزولة التسليم `--announce` افتراضيًا. استخدم `--no-deliver` للإبقاء على
المخرجات داخلية. لا يزال `--deliver` موجودًا كاسم بديل مهمل لـ `--announce`.

ملاحظة: تسليم الدردشة لـ cron المعزول مشترك. يمثّل `--announce` تسليمًا احتياطيًا من المشغّل
للرد النهائي؛ ويعطّل `--no-deliver` هذا الاحتياطي لكنه
لا يزيل أداة `message` الخاصة بالوكيل عندما يكون مسار دردشة متاحًا.

ملاحظة: تُحذف المهام ذات التشغيل الواحد (`--at`) بعد النجاح افتراضيًا. استخدم `--keep-after-run` للاحتفاظ بها.

ملاحظة: يدعم `--session` القيم `main` و`isolated` و`current` و`session:<id>`.
استخدم `current` للربط بالجلسة النشطة وقت الإنشاء، أو `session:<id>` لمفتاح جلسة دائم وصريح.

ملاحظة: يُنشئ `--session isolated` معرّف transcript/session جديدًا لكل تشغيل.
يمكن أن تنتقل التفضيلات الآمنة وتجاوزات النموذج/المصادقة الصريحة التي اختارها المستخدم، لكن
سياق المحادثة المحيط لا ينتقل: إذ تُعاد تهيئة توجيه القناة/المجموعة، وسياسة الإرسال/الاصطفاف،
والتصعيد، والأصل، وربط وقت التشغيل لـ ACP للتشغيل المعزول الجديد.

ملاحظة: بالنسبة إلى مهام CLI ذات التشغيل الواحد، تُعامَل تواريخ `--at` من دون إزاحة زمنية
على أنها UTC ما لم تمرر أيضًا `--tz <iana>`،
الذي يفسر ذلك الوقت المحلي وفق المنطقة الزمنية المحددة.

ملاحظة: تستخدم المهام المتكررة الآن تراجعًا أسيًا لإعادة المحاولة بعد الأخطاء المتتالية (30s → 1m → 5m → 15m → 60m)، ثم تعود إلى الجدول الطبيعي بعد التشغيل الناجح التالي.

ملاحظة: يعيد `openclaw cron run` الآن الاستجابة بمجرد وضع التشغيل اليدوي في قائمة التنفيذ.
تتضمن الاستجابات الناجحة `{ ok: true, enqueued: true, runId }`؛ استخدم `openclaw cron runs --id <job-id>` لمتابعة النتيجة النهائية.

ملاحظة: يفرض `openclaw cron run <job-id>` التشغيل افتراضيًا. استخدم `--due` للاحتفاظ
بالسلوك الأقدم "التشغيل فقط إذا كان مستحقًا".

ملاحظة: تمنع تشغيلات cron المعزولة الردود القديمة التي لا تحتوي إلا على تأكيد.
إذا كانت النتيجة الأولى مجرد تحديث حالة مؤقت ولم يكن أي تشغيل تابع لوكيل فرعي
مسؤولًا عن الإجابة النهائية، فسيعيد cron التوجيه مرة واحدة للحصول على النتيجة الحقيقية
قبل التسليم.

ملاحظة: إذا أعاد تشغيل cron المعزول فقط الرمز الصامت (`NO_REPLY` /
`no_reply`)، يمنع cron التسليم الصادر المباشر وكذلك مسار الملخص الاحتياطي الموضوع في القائمة،
لذلك لا يتم نشر أي شيء مرة أخرى في الدردشة.

ملاحظة: يستخدم `cron add|edit --model ...` ذلك النموذج المسموح المحدد للمهمة.
إذا لم يكن النموذج مسموحًا، فسيحذر cron ويعود إلى اختيار
نموذج الوكيل/الافتراضي للمهمة بدلًا من ذلك. ولا تزال سلاسل الرجوع المهيأة مطبقة،
لكن تجاوز النموذج العادي من دون قائمة رجوع صريحة لكل مهمة لم يعد يضيف
النموذج الأساسي للوكيل كهدف إعادة محاولة مخفي إضافي.

ملاحظة: تكون أولوية النموذج في cron المعزول كالتالي: تجاوز Gmail-hook أولًا، ثم
`--model` لكل مهمة، ثم أي تجاوز نموذج cron-session محفوظ اختاره المستخدم، ثم
الاختيار العادي للوكيل/الافتراضي.

ملاحظة: يتبع الوضع السريع في cron المعزول اختيار النموذج المباشر بعد حله.
يُطبَّق `params.fastMode` في تكوين النموذج افتراضيًا، لكن تجاوز `fastMode`
المحفوظ في الجلسة يظل له الأولوية على التكوين.

ملاحظة: إذا ألقى تشغيل معزول الخطأ `LiveSessionModelSwitchError`، فسيحفظ cron
المزوّد/النموذج المُبدَّل (وتجاوز ملف تعريف المصادقة المُبدَّل عند وجوده) للتشغيل النشط قبل إعادة المحاولة. تكون حلقة إعادة المحاولة الخارجية
مقيدة بإعادتَي محاولة للتبديل بعد المحاولة الأولى، ثم تُجهَض بدلًا من الدوران إلى ما لا نهاية.

ملاحظة: تستخدم إشعارات الفشل `delivery.failureDestination` أولًا، ثم
`cron.failureDestination` العام، وأخيرًا تعود إلى
هدف الإعلان الأساسي للمهمة عند عدم تهيئة وجهة فشل صريحة.

ملاحظة: يتم التحكم في الاحتفاظ/التنظيف في التكوين:

- `cron.sessionRetention` (الافتراضي `24h`) ينظّف جلسات التشغيلات المعزولة المكتملة.
- `cron.runLog.maxBytes` و`cron.runLog.keepLines` ينظّفان `~/.openclaw/cron/runs/<jobId>.jsonl`.

ملاحظة ترقية: إذا كانت لديك مهام cron أقدم من تنسيق التسليم/التخزين الحالي، فشغّل
`openclaw doctor --fix`. يقوم Doctor الآن بتطبيع حقول cron القديمة (`jobId` و`schedule.cron`،
وحقول التسليم ذات المستوى الأعلى بما فيها `threadId` القديم، وبدائل تسليم `provider` في الحمولة) وينقل
مهام الرجوع إلى webhook البسيطة ذات `notify: true` إلى تسليم webhook صريح عندما يكون `cron.webhook`
مهيأً.

## التعديلات الشائعة

حدّث إعدادات التسليم من دون تغيير الرسالة:

```bash
openclaw cron edit <job-id> --announce --channel telegram --to "123456789"
```

عطّل التسليم لمهمة معزولة:

```bash
openclaw cron edit <job-id> --no-deliver
```

فعّل سياق bootstrap خفيفًا لمهمة معزولة:

```bash
openclaw cron edit <job-id> --light-context
```

أعلن إلى قناة محددة:

```bash
openclaw cron edit <job-id> --announce --channel slack --to "channel:C1234567890"
```

أنشئ مهمة معزولة بسياق bootstrap خفيف:

```bash
openclaw cron add \
  --name "ملخص صباحي خفيف" \
  --cron "0 7 * * *" \
  --session isolated \
  --message "لخّص تحديثات الليلة الماضية." \
  --light-context \
  --no-deliver
```

ينطبق `--light-context` على مهام دور الوكيل المعزولة فقط. بالنسبة إلى تشغيلات cron، يبقي الوضع الخفيف سياق bootstrap فارغًا بدلًا من حقن مجموعة bootstrap الكاملة لمساحة العمل.

ملاحظة ملكية التسليم:

- تسليم الدردشة لـ cron المعزول مشترك. يمكن للوكيل الإرسال مباشرة باستخدام
  أداة `message` عندما يكون مسار دردشة متاحًا.
- يقوم `announce` بتسليم الرد النهائي احتياطيًا فقط عندما لا يرسل الوكيل
  مباشرة إلى الهدف الذي تم حله. وينشر `webhook` الحمولة النهائية إلى URL.
  ويعطّل `none` التسليم الاحتياطي من المشغّل.
- تحتفظ التذكيرات المنشأة من دردشة نشطة بهدف تسليم الدردشة المباشر
  لتسليم الإعلان الاحتياطي. قد تكون مفاتيح الجلسات الداخلية بأحرف صغيرة؛ لا
  تستخدمها كمصدر موثوق لمعرّفات المزوّد الحساسة لحالة الأحرف مثل معرّفات غرف Matrix.

## أوامر الإدارة الشائعة

تشغيل يدوي:

```bash
openclaw cron list
openclaw cron show <job-id>
openclaw cron run <job-id>
openclaw cron run <job-id> --due
openclaw cron runs --id <job-id> --limit 50
```

تتضمن إدخالات `cron runs` تشخيصات التسليم مع هدف cron المقصود،
والهدف الذي تم حله، وعمليات الإرسال عبر أداة الرسائل، واستخدام الاحتياطي، وحالة التسليم.

إعادة توجيه الوكيل/الجلسة:

```bash
openclaw cron edit <job-id> --agent ops
openclaw cron edit <job-id> --clear-agent
openclaw cron edit <job-id> --session current
openclaw cron edit <job-id> --session "session:daily-brief"
```

تعديلات التسليم:

```bash
openclaw cron edit <job-id> --announce --channel slack --to "channel:C1234567890"
openclaw cron edit <job-id> --best-effort-deliver
openclaw cron edit <job-id> --no-best-effort-deliver
openclaw cron edit <job-id> --no-deliver
```

ملاحظة تسليم الفشل:

- `delivery.failureDestination` مدعوم للمهام المعزولة.
- لا يمكن لمهام الجلسة الرئيسية استخدام `delivery.failureDestination` إلا عندما
  يكون وضع التسليم الأساسي هو `webhook`.
- إذا لم تعيّن أي وجهة فشل وكانت المهمة تعلن بالفعل إلى قناة،
  فستعيد إشعارات الفشل استخدام هدف الإعلان نفسه.

## ذو صلة

- [مرجع CLI](/ar/cli)
- [المهام المجدولة](/ar/automation/cron-jobs)
