مراجعة شيفرة ZaiMem: الذاكرة كبنية تحتية، وفخ في النشر
يجمع ZaiMem استرجاعاً حتمياً وأدوات MCP وتسليم المشاريع والوثائق والاجتماعات ونسخ GitHub. الاستضافة الدائمة هي الشرط الحاسم.

مراجعة مشروع عميقة · المصدر + العرض الحي
افتح الصفحة الحية وسيمنحك ZaiMem رمزًا خاصًا قبل أن يسألك من أنت. هذا الاختيار الصغير يقول الكثير عن المنتج: الذاكرة بوصفها بنية تحتية لا نافذة دردشة أخرى. خلفه خدمة Next.js 16 بها 33 أداة MCP في ثماني حزم، ونموذج بيانات Prisma، وتمثيلات embeddings حتمية بـ384 بُعدًا، ومسارات للوثائق والاجتماعات، ومستودع GitHub خاص اختياري كنسخة احتياطية مقروءة. الفكرة متماسكة. والمراجعة تسأل هل التنفيذ متماسك أيضًا.
ما أُحسن فيه
- يجمع ZaiMem مشكلات الاستمرارية في سطح بروتوكول واحد. يستطيع الوكيل التذكر والاسترجاع وتعزيز السياق والضغط واستئناف الجلسات والانضمام إلى المشاريع واستيعاب الوثائق والاجتماعات وتسليم العمل. توجد وحدات مستقلة لكل مجال في الكود.
- Live demo · Source repository
كيف بُني
تلتقي لوحة الويب وعملاء MCP في طبقة تطبيق واحدة. تتحقق مسارات Next.js من رمز `zm_…` ثم تستدعي وحدات المجال. تستخدم Prisma SQLite محلياً وPostgres للإدارة. ويمكن وضع snapshot مؤجل أربع ثوانٍ في مستودع GitHub خاص. الحدود بين البروتوكول والمنطق والتخزين والواجهة واضحة.
كيف يعمل الاستدعاء
تُجزأ الكلمات وتضاف char-4-grams وتُهش FNV-1a إلى 384 بعداً مع تسوية المتجه. يجمع الترتيب cosine والكلمات والحداثة والأهمية والوصول والتثبيت والمشروع. حد 0.94 يعد الذاكرة مكررة. لا يحتاج API خارجي، لكنه يلتقط التشابه اللفظي أفضل من المعنى العميق عبر الصياغات واللغات.
خيارات أمنية تستحق الإبقاء
تُولد الرموز من 24 بايت عشوائي وتُخزن SHA-256. تُرحّل السجلات القديمة. تُشفر GitHub PAT بـAES-256-GCM. الحذف مرحلتان. يوجد فحص quarantine، ويتجنب sync الملفات غير المتغيرة عبر blob SHA.
const score =
cosine(query, memory) * semanticWeight
+ keywordBoost(memory)
+ recencyBoost(memory)
+ importanceBoost(memory)
+ (memory.pinned ? pinBoost : 0);شيفرة وهمية توضيحية مبنية على مراحل الترتيب التي جرت مراجعتها، وليست مقتطفًا حرفيًا من المصدر.
فخ النشر
يقول المستودع بوضوح إن SQLite في Vercel يعيش في `/tmp` مؤقت؛ قد تبدأ كل دالة بمخزن فارغ. قاعدة bootstrap تنشئ الجداول ولا تحفظ البيانات. الاستخدام الدائم يحتاج Postgres أو Docker طويل العمر. نسخ GitHub تساعد الاستعادة ولا تصنع قاعدة معاملات متسقة.
أين تجد المراجعة نقاط ضعف
المساحة أوسع من الاختبارات المركزة. CI يفحص lint وbuild لكنه لا يشغل suite مستقل. 33 أداة تزيد حالات الصلاحيات. رمز query قد يتسرب إلى السجلات والتاريخ، وheader أفضل. CORS مفتوح يعتمد كلياً على سرية الرمز. يحتاج embedding المحلي benchmark معلناً.
كيف يبدو وكيف يُقرأ
الواجهة الحية منضبطة: خلفية سوداء ونص أبيض ولمسة بنفسجية وزر رئيسي واحد وشريط توافق. تشرح النظام بحلقات عملية. اللوحة أعقد، لذا الإظهار التدريجي ضروري. حزم الأدوات وسيلة جيدة لإخفاء قدرات كاملة.
كيف تقيّمه فعليًا
ابنِ corpus من تكرار وصياغات وترجمات وتفضيلات قديمة وتعليمات ضارة ومشروعين متشابهين ووثيقة محذوفة. قس precision@k والتسرب والدمج الخاطئ وزمن الحذف والاستعادة. كرر على SQLite وPostgres وبعد cold start.
الحكم
ZaiMem قوي كطبقة استمرارية MCP قابلة للفحص بلا API embedding خارجي. الاسترجاع الحتمي وprovenance والتسليم والنسخ المقروءة نقاط مدروسة. لكن البيانات المهمة تحتاج Postgres أو Docker دائم واختبارات retrieval وisolation.
الروابط والمؤلف
العرض الحي: ZaiMem. المصدر: GitHub.
نقاط القوة
- Broad MCP-native continuity surface
- استرجاع محلي حتمي مع تتبّع المصدر
- Encrypted GitHub backup path
المقايضات
- SQLite المؤقت غير آمن على استضافات serverless
- No checked-in retrieval benchmark
- اتساع مجموعة الأدوات يرفع مخاطر التفويض
الأنسب لـ: فرق المطورين القادرة على تشغيل Postgres أو مضيف Docker دائم والراغبة في ذاكرة وكلاء قابلة للفحص.
أسئلة شائعة
ما هو ZaiMem؟
ZaiMem طبقة ذاكرة MCP مفتوحة المصدر لوكلاء الذكاء الاصطناعي، مع استرجاع محلي وتسليم مشاريع ووثائق واجتماعات ونسخ GitHub.
هل SQLite على Vercel مناسب لبيانات ZaiMem الدائمة؟
لا. التخزين مؤقت؛ استخدم Docker دائماً أو Postgres مُداراً.
هل يحتاج ZaiMem إلى embedding API؟
لا. يحول الكلمات ورباعيات الحروف محلياً إلى متجهات من 384 بعداً.
Reviewed source at commit e15c1f9 · Live demo