الانتقال إلى المحتوى الرئيسي
بيئة تشغيل الوكيل agent runtime هي المكوّن الذي يملك حلقة نموذج مُحضَّرة واحدة: فهو يتلقى prompt، ويقود إخراج النموذج، ويتعامل مع استدعاءات الأدوات الأصلية، ويعيد الدورة النهائية إلى OpenClaw. من السهل الخلط بين بيئات التشغيل والموفّرين لأن كليهما يظهران قرب تهيئة النموذج. لكنهما طبقتان مختلفتان:
الطبقةأمثلةالمعنى
الموفّرopenai, anthropic, openai-codexكيف يصادق OpenClaw، ويكتشف النماذج، ويسمّي مراجع النماذج.
النموذجgpt-5.5, claude-opus-4-6النموذج المحدد لدورة الوكيل.
بيئة تشغيل الوكيلpi, codex, بيئات تشغيل مدعومة بـ ACPالحلقة منخفضة المستوى التي تنفذ الدورة المُحضَّرة.
القناةTelegram، Discord، Slack، WhatsAppالمكان الذي تدخل منه الرسائل إلى OpenClaw وتخرج منه.
سترى أيضًا كلمة harness في الشيفرة والتهيئة. ويقصد بها التنفيذ الذي يوفّر بيئة تشغيل وكيل. على سبيل المثال، يطبّق Codex harness المضمّن بيئة التشغيل codex. ولا يزال مفتاح التهيئة يحمل الاسم embeddedHarness لأسباب التوافق، لكن ينبغي أن تقول المستندات الموجّهة للمستخدم ومخرجات الحالة عادةً بيئة التشغيل. يستخدم إعداد Codex الشائع الموفّر openai مع بيئة التشغيل codex:
{
  agents: {
    defaults: {
      model: "openai/gpt-5.5",
      embeddedHarness: {
        runtime: "codex",
      },
    },
  },
}
وهذا يعني أن OpenClaw يختار مرجع نموذج OpenAI، ثم يطلب من بيئة تشغيل Codex app-server تشغيل دورة الوكيل المضمّنة. ولا يعني هذا أن القناة أو فهرس موفّر النموذج أو مخزن جلسات OpenClaw يصبح Codex. بالنسبة إلى تقسيم بادئة عائلة OpenAI، راجع OpenAI و موفّرو النماذج. وبالنسبة إلى عقد دعم بيئة تشغيل Codex، راجع Codex harness.

ملكية بيئة التشغيل

تمتلك بيئات التشغيل المختلفة أجزاء مختلفة من الحلقة.
السطحPI المضمّن في OpenClawCodex app-server
مالك حلقة النموذجOpenClaw عبر PI embedded runnerCodex app-server
حالة السلسلة الأساسيةنص OpenClawسلسلة Codex، بالإضافة إلى نسخة معكوسة من نص OpenClaw
أدوات OpenClaw الديناميكيةحلقة أدوات OpenClaw الأصليةيجري تمريرها عبر Codex adapter
أدوات shell والملفات الأصليةمسار PI/OpenClawأدوات أصلية لـ Codex، تمرَّر عبر native hooks عند الدعم
محرك السياقتجميع سياق أصلي في OpenClawيقوم OpenClaw projects بتجميع السياق ضمن دورة Codex
CompactionOpenClaw أو محرك السياق المحددCompaction أصلية في Codex، مع إشعارات OpenClaw وصيانة النسخة المعكوسة
تسليم القناةOpenClawOpenClaw
يُعد هذا الانقسام في الملكية قاعدة التصميم الأساسية:
  • إذا كان OpenClaw يملك السطح، فيمكن لـ OpenClaw توفير سلوك hooks العادي لـ Plugin.
  • إذا كانت بيئة التشغيل الأصلية تملك السطح، فيحتاج OpenClaw إلى أحداث بيئة تشغيل أو native hooks.
  • إذا كانت بيئة التشغيل الأصلية تملك حالة السلسلة الأساسية، فيجب على OpenClaw أن يعكس السياق ويسقطه، لا أن يعيد كتابة عناصر داخلية غير مدعومة.

اختيار بيئة التشغيل

يختار OpenClaw بيئة تشغيل مضمّنة بعد حل الموفّر والنموذج:
  1. تكون الأفضلية لبيئة التشغيل المسجّلة في الجلسة. لا تؤدي تغييرات التهيئة إلى تبديل حي لترانسكريبت موجود إلى نظام سلاسل أصلية مختلف.
  2. يفرض OPENCLAW_AGENT_RUNTIME=<id> تلك البيئة التشغيلية على الجلسات الجديدة أو المعاد ضبطها.
  3. يمكن لـ agents.defaults.embeddedHarness.runtime أو agents.list[].embeddedHarness.runtime تعيين auto أو pi أو معرّف بيئة تشغيل مسجّل مثل codex.
  4. في وضع auto، يمكن لبيئات تشغيل Plugins المسجلة المطالبة بأزواج الموفّر/النموذج المدعومة.
  5. إذا لم تطالب أي بيئة تشغيل بدورة في وضع auto وكان fallback: "pi" مضبوطًا (وهو الافتراضي)، يستخدم OpenClaw بيئة PI كخيار توافق احتياطي. اضبط fallback: "none" حتى يفشل الاختيار غير المطابق في وضع auto بدلًا من ذلك.
تفشل بيئات تشغيل Plugins الصريحة بشكل مغلق افتراضيًا. فعلى سبيل المثال، يعني runtime: "codex" استخدام Codex أو ظهور خطأ اختيار واضح ما لم تضبط fallback: "pi" في نطاق التجاوز نفسه. ولا يرث تجاوز بيئة التشغيل إعداد fallback الأوسع، لذا فإن runtime: "codex" على مستوى الوكيل لا يُعاد توجيهه بصمت إلى PI لمجرد أن الإعدادات الافتراضية تستخدم fallback: "pi".

عقد التوافق

عندما لا تكون بيئة التشغيل هي PI، ينبغي أن توثّق الأسطح التي تدعمها من OpenClaw. استخدم هذا الشكل في مستندات بيئة التشغيل:
السؤالسبب أهميته
من يملك حلقة النموذج؟يحدد أين تحدث إعادة المحاولة، واستكمال الأدوات، وقرارات الإجابة النهائية.
من يملك السجل الأساسي للسلسلة؟يحدد ما إذا كان OpenClaw يستطيع تعديل السجل أو مجرد عكسه.
هل تعمل أدوات OpenClaw الديناميكية؟تعتمد عليها المراسلة، والجلسات، وCron، والأدوات المملوكة لـ OpenClaw.
هل تعمل dynamic tool hooks؟تتوقع Plugins وجود before_tool_call وafter_tool_call وmiddleware حول الأدوات المملوكة لـ OpenClaw.
هل تعمل native tool hooks؟تحتاج أدوات shell وpatch والأدوات المملوكة لبيئة التشغيل إلى دعم hooks أصلي للسياسة والمراقبة.
هل تعمل دورة حياة محرك السياق؟تعتمد Plugins الخاصة بالذاكرة والسياق على assemble وingest وafter-turn ودورة حياة Compaction.
ما بيانات Compaction المكشوفة؟تحتاج بعض Plugins إلى الإشعارات فقط، بينما يحتاج بعضها الآخر إلى بيانات kept/dropped الوصفية.
ما غير المدعوم عمدًا؟يجب ألا يفترض المستخدمون تكافؤًا مع PI عندما تملك بيئة التشغيل الأصلية مزيدًا من الحالة.
يوثَّق عقد دعم بيئة تشغيل Codex في Codex harness.

تسميات الحالة

قد تعرض مخرجات الحالة التسميتين Execution وRuntime معًا. اقرأهما على أنهما تشخيصات، لا كأسماء موفّرين.
  • يخبرك مرجع النموذج مثل openai/gpt-5.5 بالموفّر/النموذج المحددين.
  • يخبرك معرّف بيئة التشغيل مثل codex بأي حلقة تنفذ الدورة.
  • تخبرك تسمية القناة مثل Telegram أو Discord بمكان حدوث المحادثة.
إذا كانت الجلسة لا تزال تعرض PI بعد تغيير تهيئة بيئة التشغيل، فابدأ جلسة جديدة باستخدام /new أو امسح الجلسة الحالية باستخدام /reset. تحتفظ الجلسات الحالية ببيئة التشغيل المسجّلة لها حتى لا يُعاد تشغيل transcript عبر نظامي جلسات أصلية غير متوافقين.

ذو صلة