# بنية Synapse SUMMARY: كيف بُني Synapse — Fastify، PostgreSQL، FTS5، التضمينات، خادم MCP. بنية Synapse Synapse واجهة ذاكرة متعددة المستأجرين مبنية على Fastify، و PostgreSQL مع FTS5، وخدمة تضمينات اختيارية للبحث الدلالي. البنية عالية المستوى [CODE BLOCK] المكوّنات الأساسية 1. Synapse API (Fastify) خادم HTTP الرئيسي. يتولى: - نقاط نهاية REST (، ، ، إلخ) - المصادقة (Mind Key للوكلاء، JWT للبشر) - حدود المعدل (مصادقة فقط) - تقديم الملفات الثابتة (واجهة الويب في ، ، إلخ) - إرسال الـ webhooks بُني بـ Fastify 5 للأداء. يعمل على المنفذ 12800 في الإنتاج. 2. PostgreSQL مع FTS5 مخزن البيانات الأساسي. يستخدم PostgreSQL مع امتداد FTS5 للبحث بنص كامل. الجداول الرئيسية: | الجدول | الغرض | |-------|---------| | | حسابات المستخدمين | | | نطاقات العقل (لكل واحد Mind Key) | | | سجلات الذاكرة مع جدول FTS5 الافتراضي | | | إدارة المهام | | | سجل الدردشة | | | السكربتات الدائمة | | | تسجيلات الـ webhooks | | | المهام المجدولة | | | تخزين القيم الأساسية | | | مسار التدقيق | يُمكّن FTS5 بحثًا نصيًا كاملًا أقل من مللي ثانية عبر جميع محتويات الذاكرة. راجع بحث FTS5 للتفاصيل. 3. خدمة التضمينات (اختيارية) للبحث الدلالي، يُولّد Synapse تضمينات متجهة لمحتوى الذاكرة. تُخزّن بجانب الذكريات وتُستخدم للبحث عن التشابه. - المزوّد: قابل للإعداد (OpenAI، نموذج محلي، إلخ) - يُخزَّن كعمود في جدول - يُستخدم بواسطة نقطة النهاية - راجع البحث الدلالي 4. خادم MCP (خدمة منفصلة) يعمل خادم Synapse MCP كعملية منفصلة (المنفذ 13100). يقوم بـ: - عرض 79 أداة عبر Model Context Protocol - دعم نقل stdio و HTTP/SSE و WebSocket - ترجمة استدعاءات أدوات MCP إلى استدعاءات Synapse API - متعدد المستأجرين: Mind Key واحد لكل جلسة 5. وكيل المتصفح (خدمة منفصلة) لأتمتة المتصفح، تعمل خدمة منفصلة قائمة على Playwright على المنفذ 13000. يمكن لخادم MCP استدعاؤها لأدوات . 6. وكيل SSH (خدمة منفصلة) لأوامر SSH البعيدة، تعمل خدمة منفصلة على المنفذ 12900. نموذج تعدد المستأجرين [CODE BLOCK] كل عقل معزول تمامًا. تمنح Mind Keys الوصول إلى عقل واحد فقط. تمنح JWTs الوصول إلى حساب المستخدم (لإدارة العقول). راجع تعدد المستأجرين للتفاصيل. تدفق الطلبات طلب تخزين الذاكرة [CODE BLOCK] طلب بحث الذاكرة [CODE BLOCK] النشر يُنشر Synapse كحاوية Docker. راجع : [CODE BLOCK] خصائص الأداء | العملية | زمن الاستجابة | الإنتاجية | |-----------|---------|------------| | تخزين ذاكرة | 5 مللي ث | 1000+ طلب/ث | | استدعاء ذاكرة | 20 مللي ث | 500 طلب/ث | | بحث FTS5 | 10 مللي ث | 800 طلب/ث | | بحث دلالي | 50 مللي ث | 200 طلب/ث | | استطلاع الدردشة | 5 مللي ث | 2000 طلب/ث | الخطوات التالية - نموذج الذاكرة - تعدد المستأجرين - بحث FTS5