Technical reference
التاريخ والوقت
يستخدم OpenClaw التوقيت المحلي للمضيف للطوابع الزمنية للنقل، ولا يضع في مطالبة النظام سوى المنطقة الزمنية.
تُحفظ الطوابع الزمنية لمزوّد الخدمة لكي تحتفظ الأدوات بدلالاتها الأصلية. وعندما يحتاج الوكيل إلى الوقت الحالي،
فإنه يشغّل أداة session_status.
أغلفة الرسائل (محلية افتراضيًا)
تُغلَّف الرسائل الواردة بيوم الأسبوع وطابع زمني بدقة الثواني:
[WhatsApp +1555 Mon 2026-01-05 16:26:34 PST] message textيكون الطابع الزمني للغلاف محليًا للمضيف افتراضيًا، بصرف النظر عن المنطقة الزمنية لمزوّد الخدمة.
يمكن تجاوز ذلك ضمن agents.defaults:
{ agents: { defaults: { envelopeTimezone: "local", // "utc" | "local" | "user" | IANA timezone envelopeTimestamp: "on", // "on" | "off" envelopeElapsed: "on", // "on" | "off" }, },}| المفتاح | القيم | السلوك |
|---|---|---|
envelopeTimezone |
local (الافتراضي)، utc، user، اسم IANA صريح |
تستخدم القيمة user الإعداد agents.defaults.userTimezone (المنطقة الزمنية للمضيف عند عدم تعيينه). يثبّت اسم IANA الصريح (مثل "America/Chicago") منطقة محددة؛ أما الأسماء غير المعروفة فتعود إلى UTC. |
envelopeTimestamp |
on (الافتراضي)، off |
تزيل القيمة off الطوابع الزمنية المطلقة من ترويسات الأغلفة، وبادئات المطالبات المباشرة للوكيل، والبادئات المضمّنة لمدخلات النموذج. |
envelopeElapsed |
on (الافتراضي)، off |
تزيل القيمة off لاحقة الوقت المنقضي (بالنمط +30s / +2m) التي تظهر منذ الرسالة السابقة في الجلسة. |
أمثلة
محلي (الافتراضي):
[WhatsApp +1555 Sun 2026-01-18 00:19:42 PST] helloالمنطقة الزمنية للمستخدم:
[WhatsApp +1555 Sun 2026-01-18 00:19:42 CST] helloالوقت المنقضي مع envelopeTimezone: "utc":
[WhatsApp +1555 +30s Sun 2026-01-18T05:19:00Z] follow-upمطالبة النظام: التاريخ والوقت الحاليان
تتضمن مطالبة النظام قسم التاريخ والوقت الحاليان الذي يحتوي على المنطقة الزمنية فقط (من دون ساعة أو تنسيق للوقت)، بحيث يظل التخزين المؤقت للمطالبة مستقرًا:
Time zone: America/Chicagoتكون المنطقة هي agents.defaults.userTimezone عند ضبطها، وإلا فتُستخدم المنطقة الزمنية للمضيف.
كما توجّه المطالبة الوكيل إلى تشغيل أداة session_status كلما احتاج إلى
التاريخ الحالي أو الوقت الحالي أو يوم الأسبوع.
أسطر أحداث النظام (محلية افتراضيًا)
تُسبق أحداث النظام الموضوعة في قائمة الانتظار والمُدرجة في سياق الوكيل بطابع زمني يستخدم
اختيار envelopeTimezone نفسه المستخدم في أغلفة الرسائل (الافتراضي: التوقيت المحلي للمضيف).
System: [2026-01-12 12:19:17 PST] Model switched.ضبط المنطقة الزمنية للمستخدم وتنسيق الوقت
{ agents: { defaults: { userTimezone: "America/Chicago", timeFormat: "auto", // auto | 12 | 24 }, },}- يضبط
userTimezoneالمنطقة الزمنية المحلية للمستخدم في سياق المطالبة (وكذلك عند استخدامenvelopeTimezone: "user"). - يتحكم
timeFormatفي العرض بنظام 12/24 ساعة للأوقات الظاهرة في المطالبات. تتبع القيمةautoتفضيلات نظام التشغيل.
اكتشاف تنسيق الوقت (تلقائي)
عند استخدام timeFormat: "auto"، يفحص OpenClaw تفضيلات نظام التشغيل (macOS وWindows)
ويعود إلى تنسيق الإعدادات المحلية عند تعذر ذلك. وتُخزَّن القيمة المكتشفة مؤقتًا لكل عملية
لتجنب استدعاءات النظام المتكررة.
حمولات الأدوات والموصّلات (وقت مزوّد الخدمة الخام وحقول موحّدة)
تعيد أدوات القنوات الطوابع الزمنية الأصلية لمزوّد الخدمة، وتضيف حقولًا موحّدة لتحقيق الاتساق:
timestampMs: ميلي ثانية منذ الحقبة (UTC)timestampUtc: سلسلة UTC بتنسيق ISO 8601
تُحفظ الحقول الخام لمزوّد الخدمة حتى لا تُفقد أي بيانات.
- Discord: طوابع زمنية بتنسيق ISO وفق UTC
- Slack: سلاسل شبيهة بزمن الحقبة من API
- Telegram/WhatsApp: طوابع زمنية رقمية أو بتنسيق ISO خاصة بمزوّد الخدمة
إذا كنت بحاجة إلى التوقيت المحلي، فحوّله في مرحلة لاحقة باستخدام المنطقة الزمنية المعروفة.