عن المشروع

Atrium هي الطبقة الثانية من نظام ذاكرة من ثلاث طبقات، وتوفر استرجاعًا مشتقًا وقابلًا للتخلص فوق أرشيف محادثة أساسي. لا تملك البيانات المصدر؛ بدلاً من ذلك، تبني فهرسًا يمكن إعادة بنائه من الأرشيف الأساسي والملاحظات المنسقة. يؤكد التصميم على أن الفهرس قابل للتخلص وأن الأجهزة تزامن الأرشيف، وليس الفهرس، مما يضمن التقارب دون نسخ. تشمل الميزات الرئيسية: - **الاستيعاب**: فهرسة أرشيفات المحادثة (JSONL) وأشجار الملاحظات المنسقة. - **البحث**: بحث تكيفي يدمج المسارات المعجمية (كلمة كاملة وجزء من كلمة) والدلالية (المعنى)، مع خيارات لاستخدام كل مسار بمفرده. يضمّن المسار الدلالي فقط الملاحظات المنسقة وتوليف الجلسات، وليس النص الخام. - **تسجيل الجلسات**: خطاف إيقاف Claude Code (`stop-record-episode.sh`) يدفع الوكيل لتسجيل حلقة جلسة عند استيفاء العتبات، باستخدام `atrium record-session` للتحقق والتنقيح وتخزين السجل. - **استرجاع السياق**: خطاف `UserPromptSubmit` (`user-prompt-context.sh`) يحقن الأدلة ذات الصلة في المطالبات. أمر `atrium context` (متاح أيضًا عبر MCP) يعيد أدلة منظمة، مقتصرة على المشروع والملاحظات المنسقة، مع ميزانيات محدودة وفحوصات أمان. - **إدارة الحالة**: تُخزن الحالة في دليل مخصص يُحل من متغيرات البيئة أو الإعدادات، مع إبقاء البيانات المشتقة منفصلة ولا تتم مزامنتها أبدًا. - **التطوير**: اختبارات وفحص عبر `uv` و`pytest`/`ruff`. يتضمن ملف README أمثلة استخدام، وإعدادات للخطافات، وتفاصيل حول اختبار قبول البروتوكول. كما يشرح الأساس المنطقي لإبقاء مسارات البحث منفصلة وأهمية إعادة قياس القرارات الموثقة في `AGENTS.md`.