Sessions and memory
نظرة عامة على الذاكرة
OpenClaw يتذكر الأشياء عبر كتابة ملفات Markdown عادية في مساحة عمل وكيلك. النموذج لا "يتذكر" إلا ما يتم حفظه على القرص — لا توجد حالة مخفية.
كيف يعمل
لدى وكيلك ثلاثة ملفات مرتبطة بالذاكرة:
MEMORY.md— ذاكرة طويلة الأمد. حقائق وتفضيلات وقرارات دائمة. يتم تحميلها عند بداية كل جلسة رسالة مباشرة.memory/YYYY-MM-DD.md— ملاحظات يومية. سياق وملاحظات جارية. يتم تحميل ملاحظات اليوم والأمس تلقائيًا.DREAMS.md(اختياري) — يوميات Dream وملخصات مسح Dreaming للمراجعة البشرية، بما في ذلك إدخالات الاستكمال التاريخي المؤسَّسة.
توجد هذه الملفات في مساحة عمل الوكيل (افتراضيًا ~/.openclaw/workspace).
ما الذي يوضع أين
MEMORY.md هو الطبقة الموجزة والمنسقة. استخدمه للحقائق الدائمة، والتفضيلات، والقرارات المستقرة، والملخصات القصيرة التي ينبغي أن تكون متاحة عند بداية جلسة خاصة رئيسية. لا يُقصد به أن يكون نسخة خامًا من المحادثة، أو سجلًا يوميًا، أو أرشيفًا شاملًا.
ملفات memory/YYYY-MM-DD.md هي طبقة العمل. استخدمها للملاحظات اليومية المفصلة، والمشاهدات، وملخصات الجلسات، والسياق الخام الذي قد يظل مفيدًا لاحقًا. تتم فهرسة هذه الملفات من أجل memory_search وmemory_get، لكنها لا تُحقن في مطالبة التمهيد العادية في كل دور.
بمرور الوقت، يُتوقع من الوكيل استخلاص المواد المفيدة من الملاحظات اليومية إلى MEMORY.md وإزالة الإدخالات طويلة الأمد التي أصبحت قديمة. يمكن لتعليمات مساحة العمل المولَّدة وتدفق Heartbeat القيام بذلك دوريًا؛ لا تحتاج إلى تحرير MEMORY.md يدويًا لكل تفصيل يتم تذكره.
إذا تجاوز حجم MEMORY.md ميزانية ملف التمهيد، يبقي OpenClaw الملف على القرص كما هو لكنه يقتطع النسخة المحقونة في سياق النموذج. اعتبر ذلك إشارة لنقل المواد المفصلة مرة أخرى إلى memory/*.md، أو إبقاء الملخص الدائم فقط في MEMORY.md، أو رفع حدود التمهيد إذا كنت تريد صراحة إنفاق قدر أكبر من ميزانية المطالبة. استخدم /context list أو /context detail أو openclaw doctor لمعرفة الأحجام الخام مقابل المحقونة وحالة الاقتطاع.
الالتزامات المستنتجة
بعض المتابعات المستقبلية ليست حقائق دائمة. إذا ذكرت مقابلة غدًا، فقد تكون الذاكرة المفيدة هي "تحقق بعد المقابلة"، لا "احفظ هذا إلى الأبد في MEMORY.md."
الالتزامات هي ذكريات متابعة اختيارية وقصيرة العمر لهذه الحالة. يستنتجها OpenClaw في تمريرة خلفية مخفية، ويقصرها على الوكيل والقناة نفسهما، ويسلم تسجيلات الوصول المستحقة عبر Heartbeat. التذكيرات الصريحة لا تزال تستخدم المهام المجدولة.
أدوات الذاكرة
لدى الوكيل أداتان للعمل مع الذاكرة:
memory_search— تعثر على الملاحظات ذات الصلة باستخدام البحث الدلالي، حتى عندما تختلف الصياغة عن الأصل.memory_get— تقرأ ملف ذاكرة محددًا أو نطاقًا من الأسطر.
تُوفر كلتا الأداتين من خلال Plugin الذاكرة النشطة (الافتراضي: memory-core).
Plugin الرفيق Memory Wiki
إذا أردت أن تتصرف الذاكرة الدائمة كقاعدة معرفة مُدارة أكثر من كونها مجرد ملاحظات خام، فاستخدم Plugin المضمن memory-wiki.
يجمع memory-wiki المعرفة الدائمة في خزنة ويكي تتضمن:
- بنية صفحات حتمية
- ادعاءات وأدلة منظمة
- تتبع التناقضات والحداثة
- لوحات معلومات مولدة
- ملخصات مجمعة لمستهلكي الوكيل/وقت التشغيل
- أدوات أصلية للويكي مثل
wiki_searchوwiki_getوwiki_applyوwiki_lint
لا يستبدل Plugin الذاكرة النشطة. لا يزال Plugin الذاكرة النشطة يملك الاستدعاء، والترقية، وDreaming. يضيف memory-wiki طبقة معرفة غنية بالمصدرية إلى جانبه.
راجع Memory Wiki.
البحث في الذاكرة
عند تكوين موفر تضمينات، يستخدم memory_search بحثًا هجينًا — يجمع بين تشابه المتجهات (المعنى الدلالي) ومطابقة الكلمات المفتاحية (المصطلحات الدقيقة مثل المعرفات ورموز الكود). يعمل هذا مباشرة بمجرد أن يكون لديك مفتاح API لأي موفر مدعوم.
للحصول على تفاصيل حول كيفية عمل البحث، وخيارات الضبط، وإعداد الموفرين، راجع البحث في الذاكرة.
خلفيات الذاكرة
قائمة على SQLite. تعمل مباشرة مع البحث بالكلمات المفتاحية، وتشابه المتجهات، والبحث الهجين. لا توجد تبعيات إضافية.
خدمة جانبية محلية أولًا مع إعادة ترتيب النتائج، وتوسيع الاستعلامات، والقدرة على فهرسة أدلة خارج مساحة العمل.
ذاكرة أصلية للذكاء الاصطناعي عبر الجلسات مع نمذجة المستخدم، والبحث الدلالي، والوعي بعدة وكلاء. تثبيت Plugin.
ذاكرة مضمنة مدعومة بـ LanceDB مع تضمينات متوافقة مع OpenAI، واستدعاء تلقائي، والتقاط تلقائي، ودعم تضمينات Ollama المحلية.
طبقة ويكي المعرفة
تفريغ الذاكرة التلقائي
قبل أن يلخص Compaction محادثتك، يشغّل OpenClaw دورًا صامتًا يذكّر الوكيل بحفظ السياق المهم في ملفات الذاكرة. هذا مفعّل افتراضيًا — لا تحتاج إلى تكوين أي شيء.
لإبقاء دور الصيانة هذا على نموذج محلي، عيّن تجاوزًا دقيقًا لنموذج تفريغ الذاكرة:
{ "agents": { "defaults": { "compaction": { "memoryFlush": { "model": "ollama/qwen3:8b" } } } }}ينطبق التجاوز فقط على دور تفريغ الذاكرة ولا يرث سلسلة بدائل الجلسة النشطة.
Dreaming
Dreaming هو تمريرة دمج خلفية اختيارية للذاكرة. يجمع الإشارات قصيرة الأمد، ويسجل المرشحين، ويرقّي فقط العناصر المؤهلة إلى الذاكرة طويلة الأمد (MEMORY.md).
صُمم للحفاظ على الذاكرة طويلة الأمد عالية الإشارة:
- اختياري: معطل افتراضيًا.
- مجدول: عند تمكينه، يدير
memory-coreتلقائيًا مهمة Cron متكررة واحدة لمسح Dreaming كامل. - بعتبات: يجب أن تجتاز الترقيات بوابات الدرجة، وتكرار الاستدعاء، وتنوع الاستعلامات.
- قابل للمراجعة: تُكتب ملخصات المراحل وإدخالات اليوميات إلى
DREAMS.mdللمراجعة البشرية.
لسلوك المراحل، وإشارات التسجيل، وتفاصيل يوميات Dream، راجع Dreaming.
الاستكمال المؤسَّس والترقية المباشرة
أصبح لدى نظام Dreaming الآن مساران مترابطان للمراجعة:
- Dreaming المباشر يعمل من مخزن Dreaming قصير الأمد ضمن
memory/.dreams/وهو ما تستخدمه المرحلة العميقة العادية عند تقرير ما يمكن أن يتخرج إلىMEMORY.md. - الاستكمال المؤسَّس يقرأ ملاحظات
memory/YYYY-MM-DD.mdالتاريخية كملفات أيام مستقلة ويكتب مخرجات مراجعة منظمة فيDREAMS.md.
الاستكمال المؤسَّس مفيد عندما تريد إعادة تشغيل ملاحظات أقدم وفحص ما يراه النظام دائمًا دون تحرير MEMORY.md يدويًا.
عند استخدام:
openclaw memory rem-backfill --path ./memory --stage-short-termلا تتم ترقية المرشحين الدائمين المؤسَّسين مباشرة. بل تُهيأ في مخزن Dreaming قصير الأمد نفسه الذي تستخدمه المرحلة العميقة العادية بالفعل. وهذا يعني:
- يبقى
DREAMS.mdسطح المراجعة البشرية. - يبقى المخزن قصير الأمد سطح الترتيب المواجه للآلة.
- لا يزال
MEMORY.mdلا يُكتب إلا عبر الترقية العميقة.
إذا قررت أن إعادة التشغيل لم تكن مفيدة، يمكنك إزالة الآثار المهيأة دون لمس إدخالات اليوميات العادية أو حالة الاستدعاء العادية:
openclaw memory rem-backfill --rollbackopenclaw memory rem-backfill --rollback-short-termCLI
openclaw memory status # Check index status and provideropenclaw memory search "query" # Search from the command lineopenclaw memory index --force # Rebuild the indexقراءة إضافية
- محرك الذاكرة المدمج: خلفية SQLite الافتراضية.
- محرك ذاكرة QMD: خدمة جانبية متقدمة محلية أولًا.
- ذاكرة Honcho: ذاكرة أصلية للذكاء الاصطناعي عبر الجلسات.
- Memory LanceDB: Plugin مدعوم بـ LanceDB مع تضمينات متوافقة مع OpenAI.
- Memory Wiki: خزنة معرفة مجمعة وأدوات أصلية للويكي.
- البحث في الذاكرة: مسار البحث، والموفرون، والضبط.
- Dreaming: ترقية خلفية من الاستدعاء قصير الأمد إلى الذاكرة طويلة الأمد.
- مرجع تكوين الذاكرة: كل مقابض التكوين.
- Compaction: كيف يتفاعل Compaction مع الذاكرة.