Messages and delivery
قائمة انتظار التوجيه
عند وصول مطالبة عادية بينما يكون تشغيل الجلسة قيد البث بالفعل ويكون وضع قائمة الانتظار هو steer (وهو الافتراضي، ولا يحتاج إلى إعداد)، يحاول OpenClaw إرسال تلك المطالبة إلى وقت التشغيل النشط. ينفّذ OpenClaw وحاضنة خادم تطبيق Codex الأصلية تفاصيل التسليم بطرق مختلفة.
تتناول هذه الصفحة توجيه وضع قائمة الانتظار للرسائل الواردة العادية في وضع steer. في وضع followup أو collect، تتجاوز الرسائل العادية هذا المسار وتنتظر حتى انتهاء التشغيل النشط. للاطلاع على الأمر الصريح /steer <message>، راجع التوجيه.
حدود وقت التشغيل
لا يقطع التوجيه استدعاء أداة قيد التشغيل بالفعل. يتحقق OpenClaw من رسائل التوجيه الموضوعة في قائمة الانتظار عند حدود النموذج:
- يطلب المساعد استدعاءات أدوات.
- ينفّذ OpenClaw دفعة استدعاءات الأدوات الخاصة برسالة المساعد الحالية.
- يُصدر OpenClaw حدث نهاية الدورة.
- يفرّغ OpenClaw رسائل التوجيه الموضوعة في قائمة الانتظار.
- يُلحق OpenClaw تلك الرسائل كرسائل مستخدم قبل استدعاء LLM التالي.
يُبقي هذا نتائج الأدوات مقترنة برسالة المساعد التي طلبتها، ثم يتيح لاستدعاء النموذج التالي الاطلاع على أحدث إدخال من المستخدم.
تعرض حاضنة خادم تطبيق Codex الأصلية turn/steer بدلًا من قائمة انتظار التوجيه الداخلية لوقت تشغيل OpenClaw. يجمع OpenClaw المطالبات الموضوعة في قائمة الانتظار ضمن نافذة السكون المضبوطة، ثم يرسل طلب turn/steer واحدًا يتضمن جميع إدخالات المستخدم المجمّعة بترتيب وصولها.
ترفض دورات مراجعة Codex ودورات Compaction اليدوية التوجيه ضمن الدورة نفسها. عندما يتعذر على وقت التشغيل قبول التوجيه في وضع steer، ينتظر OpenClaw انتهاء التشغيل النشط قبل بدء المطالبة.
الأوضاع
| الوضع | السلوك أثناء التشغيل النشط | السلوك اللاحق |
|---|---|---|
steer |
يوجّه المطالبة إلى وقت التشغيل النشط عندما يكون ذلك ممكنًا. | ينتظر انتهاء التشغيل النشط إذا لم يكن التوجيه متاحًا. |
followup |
لا يوجّه. | يشغّل الرسائل الموضوعة في قائمة الانتظار لاحقًا بعد انتهاء التشغيل النشط. |
collect |
لا يوجّه. | يدمج الرسائل المتوافقة الموضوعة في قائمة الانتظار في دورة لاحقة واحدة بعد نافذة منع الارتداد. |
interrupt |
يُجهض التشغيل النشط بدلًا من توجيه المطالبة إليه. | يبدأ أحدث رسالة بعد الإجهاض. |
مثال على التدفق المتتابع
إذا أرسل أربعة مستخدمين رسائل بينما ينفّذ الوكيل استدعاء أداة:
- مع السلوك الافتراضي، يتلقى وقت التشغيل النشط الرسائل الأربع كلها بترتيب وصولها قبل قرار النموذج التالي. يفرّغها OpenClaw عند حد النموذج التالي؛ ويتلقاها Codex ضمن طلب
turn/steerمجمّع واحد. - مع
/queue collect، لا ينفّذ OpenClaw التوجيه. بل ينتظر حتى انتهاء التشغيل النشط، ثم ينشئ دورة متابعة تتضمن الرسائل المتوافقة الموضوعة في قائمة الانتظار بعد نافذة منع الارتداد. - مع
/queue interrupt، يُجهض OpenClaw التشغيل النشط ويبدأ أحدث رسالة بدلًا من التوجيه.
النطاق
يستهدف التوجيه دائمًا تشغيل الجلسة النشط حاليًا. ولا ينشئ جلسة جديدة، ولا يغيّر سياسة أدوات التشغيل النشط، ولا يقسّم الرسائل حسب المُرسِل. في القنوات متعددة المستخدمين، تتضمن المطالبات الواردة بالفعل سياق المُرسِل والمسار، لذا يمكن لاستدعاء النموذج التالي معرفة من أرسل كل رسالة.
استخدم followup أو collect عندما تريد وضع الرسائل في قائمة الانتظار افتراضيًا بدلًا من توجيهها إلى التشغيل النشط. استخدم interrupt عندما ينبغي أن تحل أحدث مطالبة محل التشغيل النشط.
منع الارتداد
ينطبق messages.queue.debounceMs على تسليم رسائل followup وcollect الموضوعة في قائمة الانتظار. وفي وضع steer مع حاضنة Codex الأصلية، يضبط أيضًا نافذة السكون قبل إرسال طلب turn/steer المجمّع. أما في OpenClaw، فلا يستخدم التوجيه النشط نفسه مؤقت منع الارتداد لأن OpenClaw يجمع الرسائل تلقائيًا حتى حد النموذج التالي.