الانتقال إلى المحتوى الرئيسي

Documentation Index

Fetch the complete documentation index at: https://docs.openclaw.ai/llms.txt

Use this file to discover all available pages before exploring further.

يبني OpenClaw موجه نظام مخصصًا لكل تشغيل وكيل. الموجه مملوك لـ OpenClaw ولا يستخدم موجه pi-coding-agent الافتراضي. يجمع OpenClaw الموجه ويحقنه في كل تشغيل وكيل. يتكون تجميع الموجه من ثلاث طبقات:
  • يعرض buildAgentSystemPrompt الموجه من مدخلات صريحة. ينبغي أن يبقى عارضًا نقيًا وألا يقرأ الإعدادات العامة مباشرة.
  • يحل resolveAgentSystemPromptConfig مقابض الموجه المدعومة بالإعدادات، مثل عرض المالك، وتلميحات TTS، والأسماء المستعارة للنماذج، ووضع اقتباس الذاكرة، ووضع تفويض الوكيل الفرعي لوكيل محدد.
  • تجمع مهايئات وقت التشغيل (المضمنة، وCLI، ومعاينات الأمر/التصدير، وCompaction) الحقائق الحية مثل الأدوات، وحالة العزل، وإمكانات القنوات، وملفات السياق، ومساهمات موجه الموفر، ثم تستدعي واجهة الموجه المهيأة.
هذا يبقي أسطح الموجهات المصدرة/التصحيحية متوافقة مع التشغيلات الحية دون تحويل كل تفصيل خاص بوقت التشغيل إلى بانٍ أحادي ضخم. يمكن لـ Plugin الموفرين المساهمة بإرشادات موجه واعية بالتخزين المؤقت دون استبدال الموجه الكامل المملوك لـ OpenClaw. يمكن لوقت تشغيل الموفر أن:
  • يستبدل مجموعة صغيرة من أقسام النواة المسماة (interaction_style, tool_call_style, execution_bias)
  • يحقن بادئة مستقرة فوق حد ذاكرة الموجه المؤقتة
  • يحقن لاحقة ديناميكية تحت حد ذاكرة الموجه المؤقتة
استخدم مساهمات مملوكة للموفر للضبط الخاص بعائلة النموذج. أبقِ تعديل الموجه القديم before_prompt_build للتوافق أو لتغييرات الموجه العامة فعلًا، لا لسلوك الموفر المعتاد. يبقي تراكب عائلة OpenAI GPT-5 قاعدة التنفيذ الأساسية صغيرة ويضيف إرشادات خاصة بالنموذج لتثبيت الشخصية، والإخراج الموجز، وانضباط الأدوات، والبحث المتوازي، وتغطية المخرجات، والتحقق، والسياق المفقود، ونظافة أدوات الطرفية.

البنية

الموجه مضغوط عن قصد ويستخدم أقسامًا ثابتة:
  • الأدوات: تذكير بأن مصدر الحقيقة هو الأداة المهيكلة، إضافة إلى إرشادات استخدام الأدوات في وقت التشغيل.
  • تحيز التنفيذ: إرشادات متابعة مضغوطة: التصرف داخل الدور عند الطلبات القابلة للتنفيذ، والاستمرار حتى الإنجاز أو الحظر، والتعافي من نتائج الأدوات الضعيفة، والتحقق من الحالة القابلة للتغير مباشرة، والتحقق قبل الإنهاء.
  • السلامة: تذكير موجز بالحواجز لتجنب السلوك الساعي إلى السلطة أو تجاوز الإشراف.
  • Skills (عند توفرها): تخبر النموذج كيفية تحميل تعليمات المهارة عند الطلب.
  • تحكم OpenClaw: تخبر النموذج بتفضيل أداة gateway لأعمال الإعداد/إعادة التشغيل وتجنب اختراع أوامر CLI.
  • التحديث الذاتي لـ OpenClaw: كيفية فحص الإعداد بأمان باستخدام config.schema.lookup، وترقيع الإعداد باستخدام config.patch، واستبدال الإعداد الكامل باستخدام config.apply، وتشغيل update.run فقط بناءً على طلب صريح من المستخدم. كما ترفض أداة gateway الخاصة بالمالك فقط إعادة كتابة tools.exec.ask / tools.exec.security، بما في ذلك الأسماء المستعارة القديمة tools.bash.* التي تُطبَّع إلى مسارات exec المحمية هذه.
  • مساحة العمل: دليل العمل (agents.defaults.workspace).
  • التوثيق: المسار المحلي إلى docs/source الخاصة بـ OpenClaw ومتى تجب قراءتها.
  • ملفات مساحة العمل (المحقونة): تشير إلى أن ملفات التمهيد مضمنة أدناه.
  • العزل (عند تفعيله): يشير إلى وقت تشغيل معزول، ومسارات العزل، وما إذا كان exec بصلاحيات مرتفعة متاحًا.
  • التاريخ والوقت الحاليان: المنطقة الزمنية فقط (مستقرة للتخزين المؤقت؛ تأتي الساعة الحية من session_status).
  • توجيهات إخراج المساعد: صياغة مضغوطة للمرفقات، والملاحظات الصوتية، ووسوم الرد.
  • Heartbeats: موجه Heartbeat وسلوك الإقرار، عندما تكون Heartbeats مفعلة للوكيل الافتراضي.
  • وقت التشغيل: المضيف، ونظام التشغيل، وnode، والنموذج، وجذر المستودع (عند اكتشافه)، ومستوى التفكير (سطر واحد).
  • الاستدلال: مستوى الرؤية الحالي + تلميح تبديل /reasoning.
يبقي OpenClaw المحتوى الكبير المستقر، بما في ذلك سياق المشروع، فوق حد ذاكرة الموجه المؤقتة الداخلي. أما أقسام القناة/الجلسة المتقلبة مثل إرشادات تضمين واجهة التحكم، والمراسلة، والصوت، وسياق المحادثة الجماعية، والتفاعلات، وHeartbeats، ووقت التشغيل فتُلحَق أسفل ذلك الحد حتى تتمكن الخلفيات المحلية ذات مخازن البادئة المؤقتة من إعادة استخدام بادئة مساحة العمل المستقرة عبر أدوار القنوات. وبالمثل ينبغي أن تتجنب أوصاف الأدوات تضمين أسماء القنوات الحالية عندما يكون المخطط المقبول يحمل أصلًا تفصيل وقت التشغيل هذا. يتضمن قسم الأدوات أيضًا إرشادات وقت التشغيل للعمل طويل الأمد:
  • استخدم Cron للمتابعة المستقبلية (check back later، والتذكيرات، والعمل المتكرر) بدلًا من حلقات نوم exec، أو حيل تأخير yieldMs، أو الاستطلاع المتكرر لـ process
  • استخدم exec / process فقط للأوامر التي تبدأ الآن وتستمر في العمل في الخلفية
  • عندما يكون تنبيه الإكمال التلقائي مفعّلًا، ابدأ الأمر مرة واحدة واعتمد على مسار التنبيه القائم على الدفع عندما يصدر مخرجات أو يفشل
  • استخدم process للسجلات، أو الحالة، أو الإدخال، أو التدخل عندما تحتاج إلى فحص أمر قيد التشغيل
  • إذا كانت المهمة أكبر، ففضّل sessions_spawn؛ إكمال الوكيل الفرعي قائم على الدفع ويُعلن تلقائيًا للطالب
  • لا تستطلع subagents list / sessions_list في حلقة لمجرد انتظار الإكمال
يمكن لـ agents.defaults.subagents.delegationMode تقوية هذه الإرشادات. يبقي وضع suggest الافتراضي التلميح الأساسي. يضيف prefer قسمًا مخصصًا تفويض الوكيل الفرعي يخبر الوكيل الرئيسي أن يعمل كمنسق سريع الاستجابة وأن يدفع أي شيء أكثر تعقيدًا من رد مباشر عبر sessions_spawn. هذا متعلق بالموجه فقط؛ لا تزال سياسة الأدوات تتحكم في ما إذا كان sessions_spawn متاحًا. عند تفعيل أداة update_plan التجريبية، يخبر قسم الأدوات النموذج أيضًا باستخدامها فقط للعمل متعدد الخطوات غير التافه، والحفاظ على خطوة واحدة فقط بحالة in_progress، وتجنب تكرار الخطة كلها بعد كل تحديث. حواجز السلامة في موجه النظام إرشادية. إنها توجه سلوك النموذج لكنها لا تفرض السياسة. استخدم سياسة الأدوات، وموافقات exec، والعزل، وقوائم السماح للقنوات للفرض الصارم؛ ويمكن للمشغلين تعطيل هذه الأشياء حسب التصميم. في القنوات التي تملك بطاقات/أزرار موافقة أصلية، يخبر موجه وقت التشغيل الآن الوكيل بالاعتماد أولًا على واجهة الموافقة الأصلية هذه. ينبغي أن يضمّن أمر /approve يدويًا فقط عندما تقول نتيجة الأداة إن موافقات الدردشة غير متاحة أو إن الموافقة اليدوية هي المسار الوحيد.

أوضاع الموجه

يمكن لـ OpenClaw عرض موجهات نظام أصغر للوكلاء الفرعيين. يحدد وقت التشغيل promptMode لكل تشغيل (وليس إعدادًا مواجهًا للمستخدم):
  • full (افتراضي): يتضمن كل الأقسام أعلاه.
  • minimal: يُستخدم للوكلاء الفرعيين؛ يحذف استدعاء الذاكرة، والتحديث الذاتي لـ OpenClaw، والأسماء المستعارة للنماذج، وهوية المستخدم، وتوجيهات إخراج المساعد، والمراسلة، والردود الصامتة، وHeartbeats. تبقى الأدوات، والسلامة، وSkills عند توفيرها، ومساحة العمل، والعزل، والتاريخ والوقت الحاليان (عند معرفتهما)، ووقت التشغيل، والسياق المحقون متاحة.
  • none: يعيد سطر الهوية الأساسي فقط.
عندما يكون promptMode=minimal، تُوسم الموجهات المحقونة الإضافية باسم سياق الوكيل الفرعي بدلًا من سياق المحادثة الجماعية. بالنسبة إلى تشغيلات الرد التلقائي في القنوات، يمكن لـ OpenClaw حذف قسم الردود الصامتة العام عندما يتضمن سياق المحادثة المباشرة/الجماعية أصلًا سلوك NO_REPLY الخاص بالمحادثة والذي تم حله. يتجنب ذلك تكرار آليات الرموز في كل من موجه النظام العام وسياق القناة.

لقطات الموجه

يبقي OpenClaw لقطات موجه ملتزمًا بها لمسار Codex runtime السعيد تحت test/fixtures/agents/prompt-snapshots/codex-runtime-happy-path/. تعرض معاملات خيط/دور خادم التطبيق المحددة إضافة إلى مكدس طبقات موجه مرتبط بالنموذج ومعاد بناؤه لأدوار Telegram المباشرة، ومجموعة Discord، وHeartbeat. يتضمن ذلك المكدس مثبتة موجه نموذج Codex gpt-5.5 مولدة من شكل كتالوج/ذاكرة نماذج Codex المؤقتة، ونص مطور أذونات مسار Codex السعيد، وتعليمات مطور OpenClaw، وتعليمات وضع التعاون ذات نطاق الدور عندما يوفرها OpenClaw، ومدخلات دور المستخدم، ومراجع لمواصفات الأدوات الديناميكية. حدّث مثبتة موجه نموذج Codex المثبتة باستخدام pnpm prompt:snapshots:sync-codex-model. افتراضيًا، يبحث السكربت عن ذاكرة وقت تشغيل Codex المؤقتة في $CODEX_HOME/models_cache.json، ثم ~/.codex/models_cache.json، وعندها فقط يرجع إلى عرف مستودع Codex الخاص بالمشرف في ~/code/codex/codex-rs/models-manager/models.json. إذا لم يوجد أي من هذه المصادر، يخرج الأمر دون تغيير المثبتة الملتزم بها. مرر --catalog <path> للتحديث من ملف models_cache.json أو models.json محدد. لا تزال هذه اللقطات ليست التقاطًا خامًا لطلب OpenAI مطابقًا بايتًا ببايت. يمكن لـ Codex إضافة سياق مساحة عمل مملوك لوقت التشغيل مثل AGENTS.md، وسياق البيئة، والذكريات، وتعليمات التطبيق/Plugin، وتعليمات وضع التعاون المضمن Default داخل وقت تشغيل Codex بعد أن يرسل OpenClaw معاملات الخيط والدور. أعد توليدها باستخدام pnpm prompt:snapshots:gen وتحقق من الانحراف باستخدام pnpm prompt:snapshots:check. يشغّل CI فحص الانحراف في جزء الحدود الإضافي حتى تبقى تغييرات الموجه وتحديثات اللقطات مرتبطة بالـ PR نفسه.

حقن تمهيد مساحة العمل

تُقتطع ملفات التمهيد وتُلحق تحت سياق المشروع حتى يرى النموذج سياق الهوية والملف الشخصي دون الحاجة إلى قراءات صريحة:
  • AGENTS.md
  • SOUL.md
  • TOOLS.md
  • IDENTITY.md
  • USER.md
  • HEARTBEAT.md
  • BOOTSTRAP.md (فقط في مساحات العمل الجديدة تمامًا)
  • MEMORY.md عند وجوده
كل هذه الملفات تُحقن في نافذة السياق في كل دور ما لم تنطبق بوابة خاصة بالملف. يُحذف HEARTBEAT.md في التشغيلات العادية عندما تكون Heartbeats معطلة للوكيل الافتراضي أو عندما تكون agents.defaults.heartbeat.includeSystemPromptSection false. أبقِ الملفات المحقونة موجزة، وخصوصًا MEMORY.md. صُمم MEMORY.md ليبقى ملخصًا طويل الأمد منسقًا؛ أما الملاحظات اليومية التفصيلية فمكانها memory/*.md حيث يمكن لـ memory_search وmemory_get استرجاعها عند الطلب. تزيد ملفات MEMORY.md الكبيرة استخدام الموجه ويمكن أن تُحقن جزئيًا بسبب حدود ملفات التمهيد أدناه. عندما تعمل جلسة على حزمة Codex الأصلية، يحمّل Codex AGENTS.md من خلال اكتشاف وثائق المشروع الخاص به. لا يزال OpenClaw يحل ملفات التمهيد المتبقية ويمررها كتعليمات إعداد Codex، لذلك تحافظ SOUL.md، وTOOLS.md، وIDENTITY.md، وUSER.md، وHEARTBEAT.md، وBOOTSTRAP.md، و MEMORY.md على دور سياق مساحة العمل نفسه دون تكرار AGENTS.md.
ملفات memory/*.md اليومية ليست جزءًا من سياق المشروع التمهيدي العادي. في الأدوار المعتادة، تُستخدم عند الطلب عبر أداتي memory_search وmemory_get، لذلك لا تُحتسب ضمن نافذة السياق ما لم يقرأها النموذج صراحة. أدوار /new و/reset المجردة هي الاستثناء: يمكن لوقت التشغيل إلحاق ذاكرة يومية حديثة في البداية ككتلة سياق بدء لمرة واحدة لذلك الدور الأول.
تُقتطع الملفات الكبيرة مع علامة. يتحكم agents.defaults.bootstrapMaxChars في الحد الأقصى لحجم كل ملف (الافتراضي: 12000). يُحدد إجمالي محتوى التمهيد المحقون عبر الملفات بواسطة agents.defaults.bootstrapTotalMaxChars (الافتراضي: 60000). تحقن الملفات المفقودة علامة قصيرة للملف المفقود. عند حدوث الاقتطاع، يمكن لـ OpenClaw حقن إشعار تحذير موجز في موجه النظام؛ تحكم في ذلك باستخدام agents.defaults.bootstrapPromptTruncationWarning (off، once، always؛ الافتراضي: once). تبقى العدادات الخام/المحقونة التفصيلية في التشخيصات مثل /context، و/status، وdoctor، والسجلات. بالنسبة إلى ملفات الذاكرة، لا يعني الاقتطاع فقدان بيانات: يبقى الملف سليمًا على القرص، لكن النموذج لا يرى إلا النسخة المحقونة المختصرة حتى يقرأ الذاكرة أو يبحث فيها مباشرة. إذا كان MEMORY.md يُقتطع مرارًا، فاختصره إلى ملخص دائم أقصر وانقل السجل التفصيلي إلى memory/*.md، أو ارفع حدود التمهيد عمدًا. تحقن جلسات الوكلاء الفرعيين AGENTS.md وTOOLS.md فقط (تُرشح ملفات التمهيد الأخرى لإبقاء سياق الوكيل الفرعي صغيرًا). يمكن للخطافات الداخلية اعتراض هذه الخطوة عبر agent:bootstrap لتعديل ملفات التمهيد المحقونة أو استبدالها (على سبيل المثال، استبدال SOUL.md بشخصية بديلة). إذا أردت أن تجعل الوكيل يبدو أقل عمومية، فابدأ بـ دليل شخصية SOUL.md. لفحص مقدار مساهمة كل ملف مُحقن (الخام مقابل المُحقن، والاقتطاع، إضافةً إلى حمل مخطط الأداة الزائد)، استخدم /context list أو /context detail. راجع السياق.

معالجة الوقت

يتضمن موجّه النظام قسماً مخصصاً بعنوان التاريخ والوقت الحاليان عندما تكون المنطقة الزمنية للمستخدم معروفة. وللحفاظ على استقرار ذاكرة التخزين المؤقت للموجّه، أصبح يتضمن الآن المنطقة الزمنية فقط (من دون ساعة ديناميكية أو تنسيق وقت). استخدم session_status عندما يحتاج الوكيل إلى الوقت الحالي؛ إذ تتضمن بطاقة الحالة سطر طابع زمني. ويمكن للأداة نفسها اختيارياً تعيين تجاوز للنموذج على مستوى الجلسة (model=default يمسحه). اضبط ذلك باستخدام:
  • agents.defaults.userTimezone
  • agents.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 المضمّنة في Plugin مؤهلة إلا عندما يكون Plugin المالك لها مفعّلاً. يتيح ذلك لـ Plugins الأدوات عرض أدلة تشغيل أعمق من دون تضمين كل تلك الإرشادات مباشرةً في كل وصف أداة.
<available_skills>
  <skill>
    <name>...</name>
    <description>...</description>
    <location>...</location>
  </skill>
</available_skills>
يحافظ هذا على صغر حجم الموجّه الأساسي مع الاستمرار في تمكين الاستخدام الموجّه لـ Skills. ميزانية قائمة Skills مملوكة للنظام الفرعي لـ Skills:
  • الافتراضي العام: skills.limits.maxSkillsPromptChars
  • تجاوز لكل وكيل: agents.list[].skillsLimits.maxSkillsPromptChars
تستخدم المقتطفات العامة المحدودة أثناء التشغيل سطحاً مختلفاً:
  • agents.defaults.contextLimits.*
  • agents.list[].contextLimits.*
يحافظ هذا الفصل على فصل حجم Skills عن حجم القراءة/الحقن أثناء التشغيل، مثل memory_get، ونتائج الأدوات الحية، وتحديثات AGENTS.md بعد Compaction.

التوثيق

يتضمن موجّه النظام قسم التوثيق. عندما تكون الوثائق المحلية متاحة، فإنه يشير إلى دليل وثائق OpenClaw المحلي (docs/ في نسخة Git أو وثائق حزمة npm المضمّنة). إذا كانت الوثائق المحلية غير متاحة، فإنه يعود إلى https://docs.openclaw.ai. يتضمن القسم نفسه أيضاً موقع مصدر OpenClaw. تكشف نسخ Git الجذر المحلي للمصدر حتى يتمكن الوكيل من فحص الشيفرة مباشرةً. تتضمن عمليات تثبيت الحزمة عنوان URL لمصدر GitHub وتطلب من الوكيل مراجعة المصدر هناك كلما كانت الوثائق غير مكتملة أو قديمة. يشير الموجّه أيضاً إلى مرآة الوثائق العامة، وDiscord المجتمع، وClawHub (https://clawhub.ai) لاكتشاف Skills. ويطلب من النموذج الرجوع إلى الوثائق أولاً بشأن سلوك OpenClaw أو أوامره أو إعداده أو بنيته، وأن يشغّل openclaw status بنفسه عندما يكون ذلك ممكناً (ولا يسأل المستخدم إلا عندما لا يملك صلاحية الوصول). وبالنسبة للإعدادات تحديداً، يوجّه الوكلاء إلى إجراء أداة gateway config.schema.lookup للحصول على وثائق وقيود دقيقة على مستوى الحقول، ثم إلى docs/gateway/configuration.md وdocs/gateway/configuration-reference.md للحصول على إرشادات أوسع.

ذات صلة