الجدولة
قم بتشغيل مطالبة الوكيل كل يوم من أيام الأسبوع، كل ساعة أو مرة واحدة، في المنطقة الزمنية والمحادثة التي تختارها.
جدولة تعطي الوكيل توجيهاً في أوقات محددة، على سبيل المثال كل يوم عمل في الساعة 08:00 أو مرة واحدة الثلاثاء القادم. في كل مرة، يتلقى الوكيل التوجيه كدور في المحادثة التي اخترتها ويجيب هناك.
إنشاء جدول
افتح الجداول في الشريط الأيسر وانقر على جدول جديد. يطلب النموذج:
| الحقل |
|---|
| الاسم |
| الوكيل |
| التوجيه |
| متى |
| المنطقة الزمنية |
| الرد في |
| ما يجب إدخاله |
|---|
| تسمية قصيرة، مثل "ملخص الصباح" |
| الوكيل الذي يقوم بالعمل |
| ما يجب على الوكيل فعله في كل مرة، مكتوباً كما تكتبه في الدردشة |
| تكرار (cron)، تكرار (RRULE) أو مرة واحدة، مع الوقت أدناه |
منطقة IANA مثل Europe/Amsterdam |
| رسائلك المباشرة مع الوكيل، أو إحدى قنواتك |

كيفية كتابة الوقت:
- يحتوي Cron على خمسة حقول: الدقيقة، الساعة، يوم الشهر، الشهر ويوم الأسبوع.
0 8 * * 1-5هو أيام الأسبوع في الساعة 08:00. - يستخدم RRULE تنسيق التقويم، على سبيل المثال
FREQ=WEEKLY;BYDAY=MO,WE;BYHOUR=9;BYMINUTE=0. يخزنه Laze كـ cron مطابق. - تأخذ مرة واحدة وقتاً محلياً في المنطقة، مثل
2026-11-02T09:00. يتم تشغيل جدول لمرة واحدة ثم يظهر كمكتمل.
يتم رفض الوقت أو المنطقة غير الصحيحة بـ schedule_invalid ولا يتم حفظ أي شيء.
يعمل الجدول المتكرر بحد أقصى كل 30 دقيقة. يتم رفض cron أو RRULE الذي تكون تشغيلاته متقاربة جداً، مثل */5 * * * *، بـ schedule_too_frequent؛ للعمل الذي يجب أن يتبع حدثاً ما، استخدم مشغلاً بدلاً من ذلك.
ماذا يحدث عند تشغيل الجدول
ينشر الوكيل "تشغيل مجدول: ملخص الصباح" (مع اسم الجدول) والتوجيه في المحادثة التي اخترتها، ويذهب رده في سلسلة رسائل تحت تلك الرسالة. يعتبر التوجيه بمثابة رسالة من الشخص الذي أنشأ الجدول، لذلك يعمل الوكيل بوصول ذلك الشخص إلى الخزنة.
يبدأ كل تشغيل في جلسة جديدة لوكيل مستضاف: لديه مهارات الوكيل وملفات الذاكرة ولكن ليس محادثاته السابقة، لذلك يقوم بالمهمة من القنوات والملفات والاتصالات في كل مرة. عند انتهاء التشغيل، تتلقى جلسة الوكيل الرئيسية ملاحظة قصيرة عما فعله التشغيل. التشغيل الذي لا يجد شيئاً ليفعله لا ينشر شيئاً.
إذا غادر الوكيل تلك القناة، فإن التشغيل لا ينشر شيئاً ولا يعطي الوكيل أي دور. إذا تم إزالة الوكيل، يتم تسجيل التشغيل كمتخطى ويتوقف الجدول.

التحقق أولاً، التنبيه فقط عند حدوث تغيير
الجدول الذي يستعلم عن التغييرات لا يحتاج إلى نموذج في كل مرة. امنحه التحقق أولاً: وهو نص برمجي قابل للتنفيذ في مجلد عمل الوكيل. عند كل تشغيل، يعمل النص البرمجي على حاسوب الوكيل، قبل أي استدعاء للنموذج.
| النص البرمجي |
|---|
| يخرج بـ 0 ويطبع شيئاً |
| يخرج بـ 0 ولا يطبع شيئاً |
| يخرج بخطأ، أو يعمل لأكثر من 30 ثانية |
| ماذا يحدث |
|---|
| يستيقظ الوكيل، ويتم إضافة ما طبعه إلى التوجيه |
| لا شيء. يظهر التشغيل كـ لا جديد ولا يتم إنفاق أرصدة |
| فشل التحقق. يبقى الوكيل نائماً ويظهر الجدول تحت يحتاج إلى اهتمام |
قم بتعيينه تحت التحقق أولاً في النموذج، أو بـ laze schedule add ... --check checks/new-calls.sh. يمكن للوكيل أو مالكه فقط تعيين أو تغيير التحقق، لأنه يعمل بملفات الوكيل وأمر laze. يعمل خارج أي دور، لذا ترفضه أوامر laze vault. التحقق الذي يستدعي نموذجاً بنفسه يدفع مقابل هذا الاستدعاء. الوكلاء المتصلون من جهازك الخاص ليس لديهم حاسوب Laze لتشغيل التحقق عليه.
#!/bin/sh
now=$(laze app records list picks --site published | sha256sum)
[ "$now" = "$(cat state/picks 2>/dev/null)" ] && exit 0
echo "picks changed: $now"تصل أول 8000 حرف من المخرجات إلى الوكيل، مُشار إليها كبيانات من النص البرمجي. لا يتم نشرها في المحادثة. ثلاث حالات فشل متتالية ترسل للشخص الذي أنشأ الجدول بطاقة واحدة في الموجز. تشغيل الآن يُجري التحقق أولاً، لذلك فهو يختبر نصًا برمجيًا: يُوقظ الوكيل فقط إذا طبع النص البرمجي شيئًا. يقوم التحقق بتنبيه حاسوب نائم، والذي يعود للنوم بعد فترة وجيزة عندما لا يجد التحقق شيئاً.
إذا كان ما تراقبه هو سجل تطبيق أو قناة، استخدم مشغلاً أو مراقباً بدلاً من ذلك: يتم تشغيلهما عند التغيير ولا يحتاجان إلى حاسوب حتى ذلك الحين.
المناطق الزمنية، التوقيت الصيفي ووقت التعطل
تتبع الأوقات المنطقة الزمنية للجدول، بما في ذلك التوقيت الصيفي:
- عندما تتقدم الساعات ولا يوجد الوقت في ذلك اليوم، يتم تشغيل الجدول مرة واحدة، مباشرة بعد الفجوة.
- عندما تعود الساعات للوراء ويحدث الوقت مرتين، يتم تشغيل الجدول مرة واحدة، في المرة الأولى.
- إذا كان Laze معطلاً وفاتته تشغيلات، يتم تشغيل الجدول مرة واحدة عند عودة Laze، ويشير هذا التشغيل إلى عدد التشغيلات الفائتة. ثم يتم حساب التشغيل التالي من الآن.
إيقاف مؤقت، تعديل وحذف جدول
يحتوي كل صف في صفحة الجداول على التشغيل، تعديل، إيقاف مؤقت أو استئناف، و حذف:
- التشغيل يسرد كل تشغيل مع وقته ونتيجته.
- إيقاف مؤقت يمسح التشغيل التالي. استئناف يحسب التشغيل التالي من الآن ولا يستدرك الوقت الذي تم إيقافه مؤقتاً.
- تعديل يغير الاسم، التوجيه، الوقت، المنطقة أو المحادثة. يبقى الجدول المتوقف مؤقتاً متوقفاً بعد التعديل، ويعمل الجدول المكتمل لمرة واحدة مرة أخرى إذا أعطيته وقتاً مستقبلياً.
- حذف يزيل الجدول؛ ولا يعمل مرة أخرى أبداً.
يرى أي شخص يمكنه التحدث إلى الوكيل جداوله ويمكنه إنشاءها، تعديلها، إيقافها مؤقتاً، استئنافها وحذفها: مالكه، الأشخاص الذين يشارك معهم، والجميع لوكيل الفريق. يحتفظ الشخص الذي طلب جدولاً به أيضاً. الأشخاص الآخرون، بمن فيهم مسؤولو مساحة العمل، لا يرون جداول الوكيل؛ يتم رفض جدولة وكيل لا يمكنك التحدث إليه بـ schedule_agent_not_allowed.
جدولة من سطر الأوامر
يستخدم الأشخاص والوكلاء laze schedule. أعطِ واحداً بالضبط من --cron، --rrule أو --at. بدون --tz، تكون المنطقة هي UTC.
laze schedule add "Morning brief" --prompt "Write my morning brief from my inbox and calendar" --cron "0 8 * * 1-5" --tz Europe/Amsterdam
laze schedule add "Renewal reminder" --prompt "Remind the team about the ACME renewal" --at 2026-11-02T09:00 --tz Europe/Amsterdam --channel <channelId>
laze schedule list
laze schedule pause <scheduleId>
laze schedule runs <scheduleId>
laze schedule run <scheduleId>تشغيل الآن والتشغيلات التي لم تحدث
تشغيل الآن في صف الجدول، أو laze schedule run <scheduleId>، يشغله مرة واحدة على الفور. لا يتحرك التشغيل التالي.
إذا تم تشغيل جدول بينما وكيله غير متصل، أو تمت إزالته، أو اختفت محادثته، يتلقى الشخص الذي يعمل الجدول لأجله بطاقة واحدة في موجزه: Your scheduled run "<name>" did not run، مع السبب وزر تشغيل الآن. يؤدي تفويت آخر لنفس الجدول إلى إعادة نفس البطاقة.
مثال: ملخص صباحي في الموجز
الملخص الصباحي هو جدول يوجه الوكيل لنشر بطاقات الموجز كمجموعة واحدة. يعرض الموجز أحدث مجموعة تحت التحية، مع شريحة تصفية واحدة لكل تسمية.
laze schedule add "Morning brief" --cron "45 7 * * 1-5" --tz Europe/Amsterdam --prompt "Check my inbox, calendar and open loops. Post one feed card per thing that needs me with --group \"Morning brief <d Mon>\", one --label of money, promise, decide, nudge, risk or fyi, and --loop <stable key>. Then run laze feed group-summary \"Morning brief <d Mon>\" and post its output."للحصول على ملخص أكبر، قسّم القراءة عبر الكشافة (scouts). قم بتثبيت مهارة brief-scout على كل وكيل كشافة و morning-brief على الوكيل الذي يكتب الملخص، ثم قم بجدولة الكشافة قبل الملخص. يقوم كل كشاف بتحميل تقريره كـ briefs/<YYYY-MM-DD>/<scout>.md إلى القناة التي يقرأها الملخص، مع دليل لكل بند. يقرأ وكيل الملخص تلك الملفات، وينتظر ما يصل إلى 15 دقيقة للمتأخر منها، ويتحقق من كل بند، وينشر البنود التي تم التحقق منها كبطاقات في المجموعة. الكشاف الذي لم يتم تشغيله يقود الملخص، ويتلقى مالكه أيضاً بطاقة التشغيل الفائت مع تشغيل الآن.
نشر بطاقة مرة أخرى بنفس مفتاح --loop ينقلها إلى المجموعة الجديدة ويعرض عدد مرات مشاهدتها. يضيف --auto-send-on <YYYY-MM-DD> عداداً تنازلياً مع زر إيقاف إلى أي بطاقة.
عندما يقوم وكيل بتشغيل laze schedule add بمفتاحه الخاص، يستهدف الجدول ذلك الوكيل ويعتبر منشأً بواسطة مالك الوكيل. يمكن للوكيل المطلوب في الدردشة لعمل متكرر إنشاء الجدول بهذه الطريقة.
راجع أيضاً: مرجع CLI، الوكلاء المستضافون.