Concept internals
المناطق الزمنية
يوحّد OpenClaw الطوابع الزمنية كي يرى النموذج وقتًا مرجعيًا واحدًا بدلًا من مزيج من الساعات المحلية لمزوّدي الخدمة. تعرض ثلاثة مواضع المناطق الزمنية، ولكل منها غرضه الخاص:
ثلاثة مواضع للمناطق الزمنية
| الموضع | ما يعرضه | القيمة الافتراضية | يُضبط عبر |
|---|---|---|---|
| أغلفة الرسائل | تغلّف رسائل القنوات الواردة: [Signal +1555 Sun 2026-01-18 00:19:42 PST] hello |
المنطقة الزمنية المحلية للمضيف | agents.defaults.envelopeTimezone |
| حمولات الأدوات | تعيد أدوات القنوات المشابهة لـ readMessages وقت المزوّد الخام بالإضافة إلى timestampMs / timestampUtc الموحّدين |
حقول UTC موجودة دائمًا | غير قابل للضبط؛ يحافظ على الطوابع الزمنية الأصلية للمزوّد |
| موجّه النظام | كتلة صغيرة بعنوان Current Date & Time تتضمن المنطقة الزمنية فقط (من دون قيمة للساعة، للحفاظ على استقرار التخزين المؤقت) |
المنطقة الزمنية للمضيف إذا لم يُضبط userTimezone |
agents.defaults.userTimezone |
يتعمّد موجّه النظام حذف الساعة الحالية للحفاظ على استقرار التخزين المؤقت للموجّه عبر الأدوار. عندما يحتاج الوكيل إلى الوقت الحالي، فإنه يستدعي session_status.
ضبط المنطقة الزمنية للمستخدم
{ agents: { defaults: { userTimezone: "America/Chicago", }, },}إذا لم يُضبط userTimezone، يحلّ OpenClaw المنطقة الزمنية للمضيف في وقت التشغيل عبر Intl.DateTimeFormat().resolvedOptions().timeZone (من دون كتابة إعدادات). يتحكم agents.defaults.timeFormat (auto | 12 | 24) في العرض بتنسيق 12 أو 24 ساعة داخل الأغلفة والمواضع اللاحقة، وليس في قسم موجّه النظام.
قيم المنطقة الزمنية للغلاف
يقبل agents.defaults.envelopeTimezone ما يلي:
"local"(الافتراضي) أو"host"- المنطقة الزمنية للجهاز المضيف."utc"أو"gmt"- UTC."user"- قيمةagents.defaults.userTimezoneالمحلولة (تعود إلى المنطقة الزمنية للمضيف إذا لم تكن مضبوطة).- أي سلسلة صريحة لمنطقة IANA، مثل
"Europe/Vienna".
متى ينبغي التجاوز
- استخدم
"utc"للحصول على طوابع زمنية مستقرة عبر مضيفين في مناطق مختلفة، أو لمطابقة مخرجات التشخيص والسجلات المتوافقة مع UTC. - استخدم
"user"لإبقاء الأغلفة متوافقة مع المنطقة الزمنية المضبوطة للمستخدم، بصرف النظر عن المنطقة التي يعمل فيها مضيف Gateway. - استخدم منطقة IANA ثابتة عندما يكون مضيف Gateway في منطقة معينة، لكن يجب أن يُعرض الغلاف دائمًا وفق منطقة أخرى بصرف النظر عن ترحيل المضيف.
- اضبط
envelopeTimestamp: "off"عندما لا يكون سياق الطابع الزمني مفيدًا للمحادثة. يزيل ذلك الطوابع الزمنية المطلقة من الأغلفة، وبادئات موجّهات الوكيل المباشرة، والبادئات المضمّنة في مدخلات النموذج.
للاطلاع على مرجع السلوك الكامل، والأمثلة لكل مزوّد، وتنسيق الوقت المنقضي، راجع التاريخ والوقت.
ذو صلة
- التاريخ والوقت - السلوك الكامل للأغلفة والأدوات والموجّهات مع أمثلة.
- Heartbeat - تستخدم الساعات النشطة المنطقة الزمنية للجدولة.
- مهام Cron - تستخدم تعبيرات cron المنطقة الزمنية للجدولة.