مطالبة النظام
ينشئ OpenClaw مطالبة نظام مخصصة لكل تشغيل وكيل. تكون المطالبة مملوكة لـ OpenClaw ولا تستخدم المطالبة الافتراضية الخاصة بـ pi-coding-agent. يتم تجميع المطالبة بواسطة OpenClaw وحقنها في كل تشغيل وكيل. يمكن لإضافات الموفر المساهمة بإرشادات مطالبة تراعي التخزين المؤقت دون استبدال مطالبة OpenClaw الكاملة المملوكة له. يمكن لوقت تشغيل الموفر أن:- يستبدل مجموعة صغيرة من الأقسام الأساسية المسمّاة (
interaction_style,tool_call_style,execution_bias) - يحقن بادئة مستقرة فوق حد التخزين المؤقت للمطالبة
- يحقن لاحقة ديناميكية تحت حد التخزين المؤقت للمطالبة
before_prompt_build من أجل التوافق أو تغييرات
المطالبة العالمية فعلًا، وليس لسلوك الموفر المعتاد.
البنية
المطالبة مضغوطة عمدًا وتستخدم أقسامًا ثابتة:- الأدوات: تذكير منظَّم بمصدر الحقيقة للأدوات المهيكلة مع إرشادات استخدام الأدوات أثناء وقت التشغيل.
- السلامة: تذكير مختصر بالضوابط الوقائية لتجنب السلوك الساعي إلى السلطة أو تجاوز الإشراف.
- Skills (عند توفرها): يوضح للنموذج كيفية تحميل تعليمات المهارة عند الطلب.
- التحديث الذاتي لـ OpenClaw: كيفية فحص الإعدادات بأمان باستخدام
config.schema.lookup، وتعديل الإعدادات باستخدامconfig.patch، واستبدال الإعدادات كاملة باستخدامconfig.apply، وتشغيلupdate.runفقط عند طلب المستخدم الصريح. كما أن أداةgatewayالمخصَّصة للمالك فقط ترفض أيضًا إعادة كتابةtools.exec.ask/tools.exec.security، بما في ذلك الأسماء المستعارة القديمةtools.bash.*التي تُطبَّع إلى مسارات exec المحمية تلك. - مساحة العمل: دليل العمل (
agents.defaults.workspace). - التوثيق: المسار المحلي إلى وثائق OpenClaw (المستودع أو حزمة npm) ومتى يجب قراءتها.
- ملفات مساحة العمل (محقونة): تشير إلى أن ملفات التهيئة الأولية مضمنة أدناه.
- Sandbox (عند التمكين): يوضح بيئة التشغيل المعزولة، ومسارات Sandbox، وما إذا كان التنفيذ المرفوع الصلاحيات متاحًا.
- التاريخ والوقت الحاليان: الوقت المحلي للمستخدم، والمنطقة الزمنية، وتنسيق الوقت.
- وسوم الرد: صياغة وسوم الرد الاختيارية للموفرين المدعومين.
- Heartbeats: مطالبة Heartbeat وسلوك الإقرار، عندما تكون Heartbeats مفعلة للوكيل الافتراضي.
- وقت التشغيل: المضيف، ونظام التشغيل، وNode، والنموذج، وجذر المستودع (عند اكتشافه)، ومستوى التفكير (سطر واحد).
- الاستدلال: مستوى الرؤية الحالي + تلميح تبديل
/reasoning.
- استخدم Cron للمتابعة المستقبلية (
check back later، والتذكيرات، والعمل المتكرر) بدلًا من حلقات السكون عبرexec، أو حيل التأخيرyieldMs، أو الاستطلاع المتكرر لـprocess - استخدم
exec/processفقط للأوامر التي تبدأ الآن وتستمر في العمل في الخلفية - عند تمكين التنبيه التلقائي عند الاكتمال، ابدأ الأمر مرة واحدة واعتمد على مسار التنبيه القائم على الدفع عندما يُخرج مخرجات أو يفشل
- استخدم
processللسجلات، أو الحالة، أو الإدخال، أو التدخل عندما تحتاج إلى فحص أمر قيد التشغيل - إذا كانت المهمة أكبر، ففضّل
sessions_spawn؛ إذ إن اكتمال الوكيل الفرعي قائم على الدفع ويُعلَن عنه تلقائيًا لصاحب الطلب - لا تستطلع
subagents list/sessions_listضمن حلقة لمجرد انتظار الاكتمال
update_plan التجريبية، يوجّه قسم الأدوات النموذج أيضًا إلى
استخدامها فقط للأعمال غير البسيطة متعددة الخطوات، والحفاظ على خطوة واحدة فقط
بحالة in_progress، وتجنب تكرار الخطة كاملة بعد كل تحديث.
ضوابط السلامة في مطالبة النظام إرشادية. فهي توجه سلوك النموذج لكنها لا تفرض السياسة. استخدم سياسة الأدوات، وموافقات exec، وSandbox، وقوائم السماح الخاصة بالقنوات لفرض التنفيذ الصارم؛ ويمكن للمشغلين تعطيل هذه الأمور عمدًا.
في القنوات التي تحتوي على بطاقات/أزرار موافقة أصلية، توضح مطالبة وقت التشغيل الآن
للوكيل أن يعتمد أولًا على واجهة الموافقة الأصلية تلك. ولا ينبغي له تضمين أمر
/approve يدوي إلا عندما تشير نتيجة الأداة إلى أن موافقات الدردشة غير متاحة أو
أن الموافقة اليدوية هي المسار الوحيد.
أوضاع المطالبة
يمكن لـ OpenClaw عرض مطالبات نظام أصغر للوكلاء الفرعيين. يضبط وقت التشغيلpromptMode لكل تشغيل (وليس إعدادًا مرئيًا للمستخدم):
full(الافتراضي): يتضمن جميع الأقسام المذكورة أعلاه.minimal: يُستخدم للوكلاء الفرعيين؛ ويحذف Skills واستدعاء الذاكرة والتحديث الذاتي لـ OpenClaw والأسماء المستعارة للنماذج وهوية المستخدم ووسوم الرد والمراسلة والردود الصامتة وHeartbeats. وتبقى الأدوات، والسلامة، ومساحة العمل، وSandbox، والتاريخ والوقت الحاليان (عند معرفتهما)، ووقت التشغيل، والسياق المحقون متاحة.none: يعيد فقط سطر الهوية الأساسي.
promptMode=minimal، تُوسم المطالبات الإضافية المحقونة باسم سياق الوكيل الفرعي
بدلًا من سياق الدردشة الجماعية.
حقن التهيئة الأولية لمساحة العمل
تُقص ملفات التهيئة الأولية وتُلحق تحت سياق المشروع بحيث يرى النموذج الهوية وسياق الملف الشخصي دون الحاجة إلى قراءات صريحة:AGENTS.mdSOUL.mdTOOLS.mdIDENTITY.mdUSER.mdHEARTBEAT.mdBOOTSTRAP.md(فقط في مساحات العمل الجديدة تمامًا)MEMORY.mdعند وجوده، وإلاmemory.mdكبديل بأحرف صغيرة
HEARTBEAT.md في التشغيلات العادية عندما
تكون Heartbeats معطلة للوكيل الافتراضي أو عندما تكون
agents.defaults.heartbeat.includeSystemPromptSection مساوية لـ false. أبقِ الملفات
المحقونة موجزة — وخصوصًا MEMORY.md الذي قد يكبر بمرور الوقت ويؤدي إلى
استخدام مرتفع غير متوقع للسياق وCompaction أكثر تكرارًا.
ملاحظة: ملفاتتُقتطع الملفات الكبيرة مع علامة. يتحكمmemory/*.mdاليومية ليست جزءًا من سياق المشروع العادي الخاص بالتهيئة الأولية. في الدورات العادية، يُصل إليها عند الطلب عبر أداتيmemory_searchوmemory_get، لذلك لا تُحتسب ضمن نافذة السياق إلا إذا قرأها النموذج صراحة. أما دورات/newو/resetالمجردة فهي الاستثناء: إذ يمكن لوقت التشغيل أن يضيف مقدمًا ذاكرة يومية حديثة ككتلة سياق بدء لمرة واحدة لتلك الدورة الأولى.
agents.defaults.bootstrapMaxChars في الحد الأقصى لحجم كل ملف
(الافتراضي: 12000). ويُحدد سقف إجمالي محتوى التهيئة الأولية المحقون عبر الملفات
بواسطة agents.defaults.bootstrapTotalMaxChars
(الافتراضي: 60000). وتحقن الملفات المفقودة علامة قصيرة تفيد بفقدان الملف. عند حدوث الاقتطاع،
يمكن لـ OpenClaw حقن كتلة تحذير في سياق المشروع؛ تحكم في ذلك باستخدام
agents.defaults.bootstrapPromptTruncationWarning (off أو once أو always؛
والافتراضي: once).
لا تحقن جلسات الوكيل الفرعي سوى AGENTS.md وTOOLS.md (تُرشَّح بقية ملفات التهيئة الأولية
للحفاظ على صغر سياق الوكيل الفرعي).
يمكن للخطافات الداخلية اعتراض هذه الخطوة عبر agent:bootstrap لتعديل أو استبدال
ملفات التهيئة الأولية المحقونة (مثل تبديل SOUL.md بشخصية بديلة).
إذا أردت أن تجعل الوكيل يبدو أقل عمومية، فابدأ بـ
دليل شخصية SOUL.md.
لفحص مقدار مساهمة كل ملف محقون (الخام مقابل المحقون، والاقتطاع، إضافة إلى الحمل الزائد لمخطط الأداة)، استخدم /context list أو /context detail. انظر السياق.
التعامل مع الوقت
تتضمن مطالبة النظام قسمًا مخصصًا بعنوان التاريخ والوقت الحاليان عندما تكون المنطقة الزمنية للمستخدم معروفة. وللحفاظ على استقرار التخزين المؤقت للمطالبة، فهي تتضمن الآن فقط المنطقة الزمنية (من دون ساعة ديناميكية أو تنسيق وقت). استخدمsession_status عندما يحتاج الوكيل إلى الوقت الحالي؛
تتضمن بطاقة الحالة سطرًا للطابع الزمني. ويمكن للأداة نفسها اختياريًا ضبط
تجاوز نموذج خاص بكل جلسة (model=default يمسحه).
اضبط ذلك باستخدام:
agents.defaults.userTimezoneagents.defaults.timeFormat(auto|12|24)
Skills
عندما توجد Skills مؤهلة، يحقن OpenClaw قائمة Skills متاحة مضغوطة (formatSkillsForPrompt) تتضمن مسار الملف لكل Skill. وتوجّه
المطالبة النموذج إلى استخدام read لتحميل SKILL.md من الموقع المدرج
(مساحة العمل، أو المدار، أو المضمَّن). وإذا لم توجد Skills مؤهلة، يُحذف قسم
Skills.
تشمل الأهلية بوابات بيانات Skill الوصفية، وفحوصات بيئة/إعدادات وقت التشغيل،
وقائمة السماح الفعلية لـ Skills الخاصة بالوكيل عندما تكون
agents.defaults.skills أو
agents.list[].skills مضبوطة.
- الافتراضي العام:
skills.limits.maxSkillsPromptChars - التجاوز لكل وكيل:
agents.list[].skillsLimits.maxSkillsPromptChars
agents.defaults.contextLimits.*agents.list[].contextLimits.*
memory_get، ونتائج الأدوات الحية، وتحديثات AGENTS.md بعد Compaction.
التوثيق
عند توفره، تتضمن مطالبة النظام قسم التوثيق الذي يشير إلى دليل وثائق OpenClaw المحلي (إماdocs/ في مساحة عمل المستودع أو وثائق حزمة npm
المضمَّنة)، ويذكر أيضًا المرآة العامة، ومستودع المصدر، وDiscord الخاص بالمجتمع،
وClawHub (https://clawhub.ai) لاكتشاف Skills. وتوجّه المطالبة النموذج إلى الرجوع إلى الوثائق المحلية أولًا
لسلوك OpenClaw أو الأوامر أو الإعدادات أو البنية، وإلى تشغيل
openclaw status بنفسه متى أمكن (وسؤال المستخدم فقط عندما يفتقر إلى إمكانية الوصول).