Skip to main content
Dreaming هو نظام دمج الذاكرة في الخلفية في memory-core. ينقل الإشارات القوية قصيرة المدى إلى ذاكرة دائمة مع إبقاء العملية قابلة للتفسير والمراجعة.
Dreaming اختياري ومعطّل افتراضيًا.

ما يكتبه Dreaming

  • حالة الآلة في memory/.dreams/ (مخزن الاستدعاء، وإشارات المراحل، ونقاط تحقق الاستيعاب، والأقفال).
  • مخرجات قابلة للقراءة البشرية في DREAMS.md (أو dreams.md موجود) وملفات تقارير اختيارية للمراحل ضمن memory/dreaming/<phase>/YYYY-MM-DD.md.
تظل الترقية طويلة المدى تكتب فقط إلى MEMORY.md.

نموذج المراحل

يشغّل Dreaming ثلاث مراحل متعاونة في كل دورة مسح، بالترتيب: الخفيفة -> REM -> العميقة. هذه مراحل تنفيذ داخلية، وليست أوضاعًا منفصلة يضبطها المستخدم.
  • تقرأ حالة الاستدعاء قصيرة المدى الحديثة، وملفات الذاكرة اليومية، ونصوص الجلسات المنقّحة عند توفرها.
  • تزيل الإشارات المكررة وتجهّز الأسطر المرشحة.
  • تكتب كتلة ## Light Sleep مُدارة عندما يتضمن التخزين مخرجات مضمنة.
  • تسجّل إشارات التعزيز للترتيب العميق اللاحق.
  • لا تكتب مطلقًا إلى MEMORY.md.
  • تنشئ ملخصات للسمات والتأملات من الآثار الحديثة قصيرة المدى.
  • تكتب كتلة ## REM Sleep مُدارة عندما يتضمن التخزين مخرجات مضمنة.
  • تسجّل إشارات تعزيز REM التي يستخدمها الترتيب العميق.
  • لا تكتب مطلقًا إلى MEMORY.md.
  • ترتّب المرشحين باستخدام تقييم موزون وبوابات عتبات (يجب أن تجتاز minScore وminRecallCount وminUniqueQueries جميعًا).
  • تعيد تحميل المقتطفات من الملفات اليومية المباشرة قبل الكتابة، بحيث تُتخطى المقتطفات القديمة أو المحذوفة.
  • تلحق الإدخالات المُرقّاة بـ MEMORY.md.
  • تكتب ملخص ## Deep Sleep في DREAMS.md، واختياريًا في memory/dreaming/deep/YYYY-MM-DD.md.

استيعاب نصوص الجلسات

يمكن لـ Dreaming استيعاب نصوص الجلسات المنقّحة في مجموعة بيانات Dreaming. عند توفرها، تغذي النصوص المرحلة الخفيفة إلى جانب إشارات الذاكرة اليومية وآثار الاستدعاء. تُنقّح المحتويات الشخصية والحساسة قبل الاستيعاب.

يوميات الأحلام

يحتفظ Dreaming بسرد يوميات الأحلام في DREAMS.md. بعد توفر مادة كافية لكل مرحلة، يشغّل memory-core دورة وكيل فرعي في الخلفية بأفضل جهد ويلحق إدخالًا قصيرًا باليوميات، مستخدمًا نموذج وقت التشغيل الافتراضي ما لم يُضبط dreaming.model. إذا لم يكن النموذج المضبوط متاحًا، تعيد دورة اليوميات المحاولة مرة واحدة باستخدام نموذج الجلسة الافتراضي؛ ولا يُعاد إجراء المحاولة عند إخفاقات الثقة أو قائمة السماح، بل تظل ظاهرة في السجلات بدلًا من الرجوع بصمت إلى إدخال عام في اليوميات.
اليوميات مخصصة للقراءة البشرية في واجهة الأحلام، وليست مصدرًا للترقية. تُستبعد عناصر اليوميات والتقارير من الترقية قصيرة المدى؛ ولا تكون مؤهلة للترقية إلى MEMORY.md إلا مقتطفات الذاكرة المستندة إلى أدلة.
يتوفر أيضًا مسار تعبئة تاريخية مستند إلى أدلة لأعمال المراجعة والاسترداد:
  • يعاين memory rem-harness --path ... --grounded مخرجات اليوميات المستندة إلى أدلة من ملاحظات YYYY-MM-DD.md التاريخية.
  • يكتب memory rem-backfill --path ... إدخالات يوميات مستندة إلى أدلة وقابلة للتراجع في DREAMS.md.
  • يجهّز memory rem-backfill --path ... --stage-short-term مرشحين دائمين مستندين إلى أدلة في مخزن الأدلة قصيرة المدى نفسه الذي تستخدمه المرحلة العميقة العادية.
  • يزيل memory rem-backfill --rollback و--rollback-short-term عناصر التعبئة التاريخية المجهّزة تلك دون المساس بإدخالات اليوميات العادية أو الاستدعاء المباشر قصير المدى.
تعرض واجهة التحكم تدفق التعبئة التاريخية وإعادة الضبط نفسه لليوميات في علامة تبويب الذاكرة الخاصة بالوكيل (صفحة الوكلاء)، بحيث يمكن فحص النتائج في مشهد الأحلام قبل تقرير ما إذا كان المرشحون المستندون إلى أدلة يستحقون الترقية. يعرض مسار مشهد منفصل مستند إلى أدلة الإدخالات قصيرة المدى المجهّزة التي جاءت من إعادة التشغيل التاريخي، والعناصر المُرقّاة التي قادتها أدلة، ويتيح مسح الإدخالات المجهّزة المستندة إلى أدلة فقط دون المساس بالحالة المباشرة قصيرة المدى.

إشارات الترتيب العميق

يستخدم الترتيب العميق ست إشارات أساسية موزونة بالإضافة إلى تعزيز المراحل: تضيف إصابات المرحلتين الخفيفة وREM تعزيزًا صغيرًا يتناقص مع الحداثة من memory/.dreams/phase-signals.json. يمكن أن تُضاف نتائج التجارب الظلية فوق الدرجة الأساسية بوصفها إشارة مراجعة قبل أي كتابة دائمة: تمنح التجربة المفيدة المرشح تعزيزًا صغيرًا محدودًا، وتُبقي التجربة المحايدة ترقيته مؤجلة، وتضع التجربة الضارة علامة الرفض عليه في دورة التقييم تلك. هذه الإشارة مخصصة للتقارير فقط؛ إذ يمكنها تغيير ترتيب المرشحين أو بيانات المراجعة الوصفية، لكنها لا تكتب مطلقًا إلى MEMORY.md ولا ترقّي مرشحًا بمفردها.

تغطية تقرير التجربة الظلية في ضمان الجودة

يتضمن مختبر ضمان الجودة سيناريو مخصصًا للتقارير فقط لاستكشاف كيفية مراجعة تجربة ظلية مستقبلية في Dreaming لذاكرة مرشحة قبل الترقية: يقارن وكيل إجابة أساسية بإجابة يمكنها استخدام الذاكرة المرشحة، ثم يكتب تقريرًا محليًا يتضمن حكمًا وسببًا وعلامات مخاطر. يقتصر نطاق هذه التغطية على ضمان الجودة؛ فهي تتحقق من بقاء عنصر التقرير منفصلًا عن MEMORY.md ومن أن الوكيل لا يدّعي مطلقًا أن المرشح قد رُقّي. ولا تضيف سلوكًا إنتاجيًا للتجارب الظلية ولا تغيّر محرك الترقية في المرحلة العميقة. يحافظ مشغّل التجربة الظلية memory-core على العقد نفسه المخصص للتقارير فقط لمسارات الشيفرة التي تحتاج إلى عنصر ثابت. يقبل المرشح، وموجّه التجربة، والنتيجة الأساسية، ونتيجة المرشح، والحكم، والسبب، وعلامات المخاطر، ومراجع الأدلة، ثم يكتب تقريرًا باستخدام promotion action: report-only. تُربط الأحكام المفيدة بتوصية promote، والأحكام المحايدة بـ defer، والأحكام الضارة بـ reject؛ ولا يكتب أي منها إلى MEMORY.md أو يطبّق ترقية المرحلة العميقة.

الجدولة

عند التمكين، يدير memory-core تلقائيًا مهمة Cron واحدة لدورة Dreaming كاملة، مع إزالة التكرار عبر مساحة عمل وقت التشغيل الأساسية وأي مساحات عمل مضبوطة للوكلاء، بحيث لا يؤدي توسيع مساحات عمل الوكلاء الفرعيين إلى استبعاد DREAMS.md وحالة الذاكرة للوكيل الرئيسي.

البدء السريع

أمر الشرطة المائلة

يتطلب /dreaming on و/dreaming off حالة المالك للمتصلين عبر القنوات أو operator.admin لعملاء Gateway. أما /dreaming status و/dreaming help فهما للقراءة فقط.

سير عمل CLI

يستخدم memory promote اليدوي عتبات المرحلة العميقة افتراضيًا ما لم تُستبدل بعلامات CLI.

الإعدادات الافتراضية الرئيسية

توجد جميع الإعدادات ضمن plugins.entries.memory-core.config.dreaming.
boolean
افتراضي:"false"
تمكين دورة Dreaming أو تعطيلها.
string
افتراضي:"0 3 * * *"
وتيرة Cron لدورة Dreaming الكاملة.
string
استبدال اختياري لنموذج الوكيل الفرعي ليوميات الأحلام. استخدم قيمة provider/model معيارية عند ضبط قائمة سماح allowedModels لوكيل فرعي أيضًا.
number
افتراضي:"160"
الحد الأقصى للعدد التقديري للرموز المحتفظ بها من كل مقتطف استدعاء قصير المدى يُرقّى إلى MEMORY.md. يظل مصدر الترتيب ظاهرًا.
يتطلب dreaming.model وجود plugins.entries.memory-core.subagent.allowModelOverride: true. لتقييده، اضبط أيضًا plugins.entries.memory-core.subagent.allowedModels. لا تغطي إعادة المحاولة التلقائية سوى أخطاء عدم توفر النموذج؛ وتظل إخفاقات الثقة أو قائمة السماح ظاهرة في السجلات بدلًا من الرجوع بصمت.
معظم سياسات المراحل والعتبات وسلوك التخزين تفاصيل تنفيذ داخلية. راجع مرجع ضبط الذاكرة للاطلاع على القائمة الكاملة للمفاتيح.

واجهة الأحلام

عند التمكين، تعرض علامة تبويب الأحلام في Gateway ما يلي:
  • حالة تمكين Dreaming الحالية
  • الحالة على مستوى المراحل ووجود دورة المسح المُدارة
  • أعداد العناصر قصيرة المدى والمستندة إلى أدلة والإشارات والعناصر المُرقّاة اليوم
  • توقيت التشغيل المجدول التالي
  • مسار مشهد منفصل مستند إلى أدلة لإدخالات إعادة التشغيل التاريخي المجهّزة
  • قارئ قابل للتوسيع ليوميات الأحلام ومدعوم بـ doctor.memory.dreamDiary

ذو صلة