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

السياق

«السياق» هو كل ما يرسله OpenClaw إلى النموذج أثناء التشغيل. وهو مقيّد بـ نافذة السياق الخاصة بالنموذج (حدّ الرموز). نموذج ذهني للمبتدئين:
  • مطالبة النظام (يبنيها OpenClaw): القواعد، الأدوات، قائمة Skills، الوقت/بيئة التشغيل، وملفات مساحة العمل المحقونة.
  • سجلّ المحادثة: رسائلك + رسائل المساعد لهذه الجلسة.
  • استدعاءات الأدوات/النتائج + المرفقات: مخرجات الأوامر، قراءة الملفات، الصور/الصوت، إلخ.
السياق ليس هو نفسه «الذاكرة»: يمكن تخزين الذاكرة على القرص وإعادة تحميلها لاحقًا؛ أمّا السياق فهو ما يوجد داخل نافذة النموذج الحالية.

البدء السريع (فحص السياق)

  • /status → عرض سريع لـ «إلى أي حد امتلأت نافذتي؟» + إعدادات الجلسة.
  • /context list → ما الذي يتم حقنه + أحجام تقريبية (لكل ملف + الإجمالي).
  • /context detail → تفصيل أعمق: أحجام كل ملف، وأحجام مخططات كل أداة، وأحجام إدخالات كل Skill، وحجم مطالبة النظام.
  • /usage tokens → إلحاق تذييل استخدام لكل رد ضمن الردود العادية.
  • /compact → تلخيص السجل الأقدم في إدخال مُدمج لتحرير مساحة في النافذة.
انظر أيضًا: أوامر الشرطة المائلة، استخدام الرموز والتكاليف، الضغط.

مخرجات مثال

تختلف القيم حسب النموذج، والموفّر، وسياسة الأدوات، ومحتويات مساحة العمل.

/context list

🧠 Context breakdown
Workspace: <workspaceDir>
Bootstrap max/file: 20,000 chars
Sandbox: mode=non-main sandboxed=false
System prompt (run): 38,412 chars (~9,603 tok) (Project Context 23,901 chars (~5,976 tok))

Injected workspace files:
- AGENTS.md: OK | raw 1,742 chars (~436 tok) | injected 1,742 chars (~436 tok)
- SOUL.md: OK | raw 912 chars (~228 tok) | injected 912 chars (~228 tok)
- TOOLS.md: TRUNCATED | raw 54,210 chars (~13,553 tok) | injected 20,962 chars (~5,241 tok)
- IDENTITY.md: OK | raw 211 chars (~53 tok) | injected 211 chars (~53 tok)
- USER.md: OK | raw 388 chars (~97 tok) | injected 388 chars (~97 tok)
- HEARTBEAT.md: MISSING | raw 0 | injected 0
- BOOTSTRAP.md: OK | raw 0 chars (~0 tok) | injected 0 chars (~0 tok)

Skills list (system prompt text): 2,184 chars (~546 tok) (12 skills)
Tools: read, edit, write, exec, process, browser, message, sessions_send, …
Tool list (system prompt text): 1,032 chars (~258 tok)
Tool schemas (JSON): 31,988 chars (~7,997 tok) (counts toward context; not shown as text)
Tools: (same as above)

Session tokens (cached): 14,250 total / ctx=32,000

/context detail

🧠 Context breakdown (detailed)

Top skills (prompt entry size):
- frontend-design: 412 chars (~103 tok)
- oracle: 401 chars (~101 tok)
… (+10 more skills)

Top tools (schema size):
- browser: 9,812 chars (~2,453 tok)
- exec: 6,240 chars (~1,560 tok)
… (+N more tools)

ما الذي يُحتسب ضمن نافذة السياق

كل ما يستلمه النموذج يُحتسب، بما في ذلك:
  • مطالبة النظام (جميع الأقسام).
  • سجلّ المحادثة.
  • استدعاءات الأدوات + نتائج الأدوات.
  • المرفقات/النصوص المفرّغة (صور/صوت/ملفات).
  • ملخصات للميثاق والفنون المشبعة.
  • «أغلفة» الموفّر أو الرؤوس المخفية (غير مرئية لكنها تُحتسب).

كيف يبني OpenClaw مطالبة النظام

مطالبة النظام مملوكة لـ OpenClaw ويُعاد بناؤها في كل تشغيل. وتشمل:
  • قائمة الأدوات + أوصاف قصيرة.
  • قائمة Skills (بيانات وصفية فقط؛ انظر أدناه).
  • موقع مساحة العمل.
  • الوقت (UTC + وقت المستخدم المُحوَّل إذا كان مُهيّأ).
  • بيانات وصفية لبيئة التشغيل (المضيف/نظام التشغيل/النموذج/التفكير).
  • ملفات تهيئة مساحة العمل المحقونة ضمن سياق المشروع.
تفصيل كامل: مطالبة النظام.

ملفات مساحة العمل المحقونة (سياق المشروع)

افتراضيًا، يقوم OpenClaw بحقن مجموعة ثابتة من ملفات مساحة العمل (إن وُجدت):
  • AGENTS.md
  • SOUL.md
  • TOOLS.md
  • IDENTITY.md
  • USER.md
  • HEARTBEAT.md
  • BOOTSTRAP.md (في التشغيل الأول فقط)
يتم اقتطاع الملفات الكبيرة لكل ملف باستخدام agents.defaults.bootstrapMaxChars (الافتراضي 20000 حرفًا). يفرض OpenClaw أيضًا حدًا إجماليًا لحقن التمهيد عبر الملفات باستخدام agents.defaults.bootstrapTotalMaxChars (الافتراضي 24000 حرفًا). يعرض /context أحجام الخام مقابل المحقون وما إذا حدث اقتطاع.

Skills: ما الذي يُحقن مقابل ما يُحمَّل عند الطلب

تتضمن مطالبة النظام قائمة Skills مضغوطة (الاسم + الوصف + الموقع). لهذه القائمة حمل فعلي. لا تُدرج تعليمات الـ Skill افتراضيًا. ومن المتوقّع أن يقوم النموذج بـ read SKILL.md الخاصة بالـ Skill عند الحاجة فقط.

الأدوات: هناك كلفتان

تؤثر الأدوات على السياق بطريقتين:
  1. نص قائمة الأدوات في مطالبة النظام (ما تراه باسم «Tooling»).
  2. مخططات الأدوات (JSON). تُرسل هذه إلى النموذج ليتمكن من استدعاء الأدوات. وهي تُحتسب ضمن السياق رغم أنك لا تراها كنص عادي.
يقوم /context detail بتفصيل أكبر مخططات الأدوات لتتمكن من رؤية ما يهيمن على الحجم.

الأوامر، والتوجيهات، و«الاختصارات المضمّنة»

تتعامل Gateway مع أوامر الشرطة المائلة. وهناك عدة سلوكيات مختلفة:
  • أوامر مستقلة: رسالة تحتوي فقط على /... تُشغَّل كأمر.
  • توجيهات: يتم نزع /think، /verbose، /reasoning، /elevated، /model، /queue قبل أن يرى النموذج الرسالة.
    • الرسائل التي تحتوي على توجيهات فقط تُبقي إعدادات الجلسة.
    • التوجيهات المضمّنة داخل رسالة عادية تعمل كتلميحات لكل رسالة.
  • اختصارات مضمّنة (مرسِلون مُدرجون في القائمة المسموح بها فقط): يمكن لبعض رموز /... داخل رسالة عادية أن تُشغَّل فورًا (مثال: «hey /status»)، ويتم نزعها قبل أن يرى النموذج النص المتبقي.
التفاصيل: أوامر الشرطة المائلة.

الجلسات، والضغط، والحذف (ما الذي يستمر)

يعتمد ما يستمر عبر الرسائل على الآلية:
  • السجلّ العادي يستمر في نص الجلسة حتى يتم ضغطه/حذفه وفق السياسة.
  • الضغط يُبقي ملخصًا في نص الجلسة ويحافظ على الرسائل الحديثة سليمة.
  • الحذف يزيل نتائج الأدوات القديمة من مطالبة التشغيل في الذاكرة، لكنه لا يعيد كتابة نص الجلسة.
الوثائق: الجلسة، الضغط، حذف الجلسة.

ما الذي يبلّغ عنه /context فعليًا

يفضّل /context أحدث تقرير مبني أثناء التشغيل لمطالبة النظام عند توفره:
  • System prompt (run) = مُلتقط من آخر تشغيل مُضمَّن (قادر على الأدوات) ومخزَّن في مخزن الجلسة.
  • System prompt (estimate) = محسوب عند الطلب عندما لا يوجد تقرير تشغيل (أو عند التشغيل عبر خلفية CLI لا تُنشئ التقرير).
في كلتا الحالتين، يبلّغ عن الأحجام وأكبر المساهمين؛ ولا يقوم بتفريغ مطالبة النظام الكاملة أو مخططات الأدوات.