{"title":"الأسئلة الشائعة لاستكشاف الأخطاء","slug":"troubleshooting","category":"faq","summary":"حلول لمشكلات Synapse الشائعة — المصادقة، الشبكة، البيانات، النشر.","audience":["human","llm"],"tags":["faq","troubleshooting","problems","solutions"],"difficulty":"beginner","updated":"2026-06-27","word_count":671,"read_minutes":3,"lang":"ar","translated":true,"requested_lang":"ar","content_markdown":"\n# الأسئلة الشائعة لاستكشاف الأخطاء\n\nحلول لمشكلات Synapse الشائعة.\n\n## لا أستطيع تسجيل الدخول\n\n### الأعراض\n\n- يُرجع `POST /login` 401\n- \"Invalid email or password\"\n\n### الحلول\n\n1. **تحقق أن البريد الإلكتروني صحيح** — حساس لحالة الأحرف\n2. **تحقق من كلمة المرور** — 6 أحرف كحد أدنى\n3. **سجّل أولًا** إذا لم يكن لديك حساب: `POST /register`\n4. **أعد تعيين كلمة المرور** (إذا كان SMTP مُعدًا) عبر واجهة الويب\n\n## فقدت Mind Key\n\n### الأعراض\n\n- لا أستطيع الوصول إلى الذكريات\n- حُذف Mind Key أو فُقد\n\n### الحلول\n\nلا يمكن استرداد Mind Keys. يجب أن:\n\n1. تسجّل الدخول للحصول على JWT: `POST /login`\n2. تسرد العقول: `GET /minds` (مع JWT)\n3. تنشئ عقلًا جديدًا: `POST /minds`\n4. تحفظ Mind Key الجديد\n5. (اختياري) تحذف العقل القديم: `DELETE /minds/:id`\n\n**البيانات في العقل القديم فقدت** إلا إذا وجدت Mind Key.\n\n## استدعاءات الـ API تُرجع 401\n\n### الأعراض\n\n- جميع استدعاءات الـ API تُرجع 401 Unauthorized\n- \"Mind Key fehlt oder ungültig\"\n\n### الحلول\n\n1. **تحقق من تنسيق الترويسة**: `Authorization: Bearer mk_...`\n2. **تحقق أن Mind Key يبدأ بـ `mk_`** (وليس `eyJ` وهو JWT)\n3. **اختبر مباشرة**:\n   ```bash\n   curl -H \"Authorization: Bearer mk_YOUR_KEY\" \\\n        https://synapse.schaefer.zone/memory/recall\n   ```\n4. **قد يكون Mind Key مُبطَلًا** — أنشئ عقلًا جديدًا\n\nراجع [المصادقة](/docs/getting-started/authentication).\n\n## استدعاءات الـ API تُرجع 404\n\n### الأعراض\n\n- 404 Not Found\n- \"Route not found\"\n\n### الحلول\n\n> [!CRITICAL]\n> لا تخمّن مسارات نقاط النهاية. فقط المسارات في `GET /endpoints` موجودة.\n\n1. **تحقق من نقاط النهاية الصالحة**: `curl https://synapse.schaefer.zone/endpoints`\n2. **قارن عنوان URL بدقة** — حساس لحالة الأحرف، بلا شرطات مائلة لاحقة\n3. **تحقق من طريقة HTTP** — `GET /memory` مقابل `POST /memory` مختلفة\n\n## استدعاءات الـ API تُرجع 429\n\n### الأعراض\n\n- 429 Too Many Requests\n- \"Rate limit exceeded\"\n\n### الحلول\n\n1. **بدّل إلى مصادقة الترويسة** (بلا حد معدل):\n   ```bash\n   # لا تفعل\n   curl \".../memory/recall?key=mk_...\"\n   \n   # افعل\n   curl -H \"Authorization: Bearer mk_...\" .../memory/recall\n   ```\n2. **انتظر `Retry-After` ثانية** إذا وجب استخدام `?key=`\n\nراجع [حدود المعدل](/docs/api/rate-limits).\n\n## بحث الذاكرة يُرجع نتائج فارغة\n\n### الأعراض\n\n- يُرجع `GET /memory/search?q=...` فارغًا\n- أعرف أن الذكريات موجودة\n\n### الحلول\n\n1. **تحقق من وجود الذكريات**: `GET /memory/recall`\n2. **تحقق من صياغة البحث** — لـ FTS5 صياغة محددة\n3. **جرّب استعلامًا أبسط** — `?q=docker` بدلًا من `?q=docker+swarm+deployment`\n4. **استخدم البحث الدلالي** للاستعلامات المفاهيمية: `GET /memory/semantic-search?q=...`\n\nراجع [بحث FTS5](/docs/concepts/fts5-search).\n\n## الذكريات لا تستمر\n\n### الأعراض\n\n- يُرجع POST /memory نجاحًا\n- لا يُظهرها GET /memory/recall\n\n### الحلول\n\n1. **تحقق من نفس Mind Key** — مفاتيح مختلفة = عقول مختلفة\n2. **تحقق من الاستجابة** — يُرجع POST `{ \"id\": \"mem_...\", \"status\": \"stored\" }`\n3. **جرّب GET /memory** (قائمة JSON) بدلًا من /memory/recall (نص)\n4. **تحقق من المرشّح** — `?category=` أو `?tag=` قد يخفيها\n\n## الأدوات لا تظهر في Claude Desktop\n\n### الأعراض\n\n- يُظهر Claude Desktop 0 أدوات\n- لا توجد أيقونة 🔌\n\n### الحلول\n\n1. **أعد تشغيل Claude Desktop بالكامل** (Cmd+Q)\n2. **تحقق أن ملف الإعداد** JSON صالح\n3. **تحقق من Node.js 18+** مثبت\n4. **شغّل MCP يدويًا**: `npx -y synapse-mcp-api@latest`\n5. **تحقق من السجلات**: `~/Library/Logs/Claude/mcp.log`\n\nراجع [استكشاف أخطاء MCP](/docs/mcp/troubleshooting).\n\n## Synapse غير متصل\n\n### الأعراض\n\n- لا يمكن الوصول إلى synapse.schaefer.zone\n- curl ينتهي بانتهاء المهلة\n\n### الحلول\n\n1. **تحقق من إنترنتك** — جرّب موقعًا آخر\n2. **تحقق من صحة Synapse**: `curl https://synapse.schaefer.zone/health`\n3. **انتظر** — قد يكون انقطاعًا مؤقتًا أو نشرًا\n4. **تحقق من صفحة الحالة** (إن وُجدت)\n\nللاستضافة الذاتية: تحقق من حالة حاوية Docker، اتصال قاعدة البيانات.\n\n## أخطاء قاعدة البيانات\n\n### الأعراض\n\n- 500 Internal Server Error\n- \"Database connection failed\"\n\n### الحلول\n\nللاستضافة الذاتية:\n\n1. **تحقق من تشغيل PostgreSQL**: `docker ps | grep postgres`\n2. **تحقق من DATABASE_URL** في البيئة\n3. **تحقق من الترحيلات**: `npm run migrate:check`\n4. **تحقق من مساحة القرص**: `df -h`\n\nللمُستضاف: أبلغ الدعم.\n\n## الـ Webhook لا يعمل\n\n### الأعراض\n\n- سجّلت webhook لكن لا أتلقى استدعاءات\n- لا POST إلى عنوان URL الخاص بك\n\n### الحلول\n\n1. **تحقق أن عنوان URL قابل للوصول**: `curl -X POST your-url -d '{}'`\n2. **تحقق من مرشّح الأحداث** — `memory.*` يطابق جميع أحداث الذاكرة\n3. **اختبر الـ webhook**: `POST /webhooks/:id/test`\n4. **تحقق أن الـ webhook مُمكَّن**: `GET /webhooks/:id`\n5. **تحقق من SSL** — يتطلب Synapse HTTPS صالحًا لعناوين URL للـ webhooks\n\nراجع [Webhooks API](/docs/api/webhooks).\n\n## مهمة Cron لا تعمل\n\n### الأعراض\n\n- أنشأت مهمة cron لكنها لا تعمل\n- `next_run` لا يُحدّث\n\n### الحلول\n\n1. **تحقق من صياغة الجدول** — يجب أن تكون cron 5 حقول صالح OR عدد ثوانٍ صحيح\n2. **تحقق أن نقطة النهاية مسموحة** — يجب أن تكون http(s)، بلا عناوين IP خاصة\n3. **تحقق أن المهمة مُمكَّنة**: `GET /cron`\n4. **انتظر الوقت المجدول التالي** — cron ليس فوريًا\n\nراجع [Cron والمجدول](/docs/api/cron).\n\n## تحتاج مزيدًا من المساعدة؟\n\n1. **تحقق من الوثائق الموجودة**: <https://synapse.schaefer.zone/docs>\n2. **ابحث في الوثائق**: `GET /docs/search?q=your+question`\n3. **افتح issue**: <https://gitlab.com/schaefer-services/synapse/-/issues>\n4. **تواصل**: راجع صفحة `/support`\n\n## الخطوات التالية\n\n- [الأخطاء ومعالجتها](/docs/api/errors)\n- [أسئلة الـ API الشائعة](/docs/faq/api-faq)\n- [استكشاف أخطاء MCP](/docs/mcp/troubleshooting)\n","content_html":"<h1>الأسئلة الشائعة لاستكشاف الأخطاء</h1>\n<p>حلول لمشكلات Synapse الشائعة.</p>\n<h2>لا أستطيع تسجيل الدخول</h2>\n<h3>الأعراض</h3>\n<ul>\n<li>يُرجع <code>POST /login</code> 401</li>\n<li>&quot;Invalid email or password&quot;</li>\n</ul>\n<h3>الحلول</h3>\n<ol>\n<li><strong>تحقق أن البريد الإلكتروني صحيح</strong> — حساس لحالة الأحرف</li>\n<li><strong>تحقق من كلمة المرور</strong> — 6 أحرف كحد أدنى</li>\n<li><strong>سجّل أولًا</strong> إذا لم يكن لديك حساب: <code>POST /register</code></li>\n<li><strong>أعد تعيين كلمة المرور</strong> (إذا كان SMTP مُعدًا) عبر واجهة الويب</li>\n</ol>\n<h2>فقدت Mind Key</h2>\n<h3>الأعراض</h3>\n<ul>\n<li>لا أستطيع الوصول إلى الذكريات</li>\n<li>حُذف Mind Key أو فُقد</li>\n</ul>\n<h3>الحلول</h3>\n<p>لا يمكن استرداد Mind Keys. يجب أن:</p>\n<ol>\n<li>تسجّل الدخول للحصول على JWT: <code>POST /login</code></li>\n<li>تسرد العقول: <code>GET /minds</code> (مع JWT)</li>\n<li>تنشئ عقلًا جديدًا: <code>POST /minds</code></li>\n<li>تحفظ Mind Key الجديد</li>\n<li>(اختياري) تحذف العقل القديم: <code>DELETE /minds/:id</code></li>\n</ol>\n<p><strong>البيانات في العقل القديم فقدت</strong> إلا إذا وجدت Mind Key.</p>\n<h2>استدعاءات الـ API تُرجع 401</h2>\n<h3>الأعراض</h3>\n<ul>\n<li>جميع استدعاءات الـ API تُرجع 401 Unauthorized</li>\n<li>&quot;Mind Key fehlt oder ungültig&quot;</li>\n</ul>\n<h3>الحلول</h3>\n<ol>\n<li><strong>تحقق من تنسيق الترويسة</strong>: <code>Authorization: Bearer mk_...</code></li>\n<li><strong>تحقق أن Mind Key يبدأ بـ <code>mk_</code></strong> (وليس <code>eyJ</code> وهو JWT)</li>\n<li><strong>اختبر مباشرة</strong>:<pre><code class=\"hljs language-bash\">curl -H <span class=\"hljs-string\">&quot;Authorization: Bearer mk_YOUR_KEY&quot;</span> \\\n     https://synapse.schaefer.zone/memory/recall</code></pre></li>\n<li><strong>قد يكون Mind Key مُبطَلًا</strong> — أنشئ عقلًا جديدًا</li>\n</ol>\n<p>راجع <a href=\"/docs/getting-started/authentication\">المصادقة</a>.</p>\n<h2>استدعاءات الـ API تُرجع 404</h2>\n<h3>الأعراض</h3>\n<ul>\n<li>404 Not Found</li>\n<li>&quot;Route not found&quot;</li>\n</ul>\n<h3>الحلول</h3>\n<div class=\"callout callout-critical\">لا تخمّن مسارات نقاط النهاية. فقط المسارات في `GET /endpoints` موجودة.</div><ol>\n<li><strong>تحقق من نقاط النهاية الصالحة</strong>: <code>curl https://synapse.schaefer.zone/endpoints</code></li>\n<li><strong>قارن عنوان URL بدقة</strong> — حساس لحالة الأحرف، بلا شرطات مائلة لاحقة</li>\n<li><strong>تحقق من طريقة HTTP</strong> — <code>GET /memory</code> مقابل <code>POST /memory</code> مختلفة</li>\n</ol>\n<h2>استدعاءات الـ API تُرجع 429</h2>\n<h3>الأعراض</h3>\n<ul>\n<li>429 Too Many Requests</li>\n<li>&quot;Rate limit exceeded&quot;</li>\n</ul>\n<h3>الحلول</h3>\n<ol>\n<li><strong>بدّل إلى مصادقة الترويسة</strong> (بلا حد معدل):<pre><code class=\"hljs language-bash\"><span class=\"hljs-comment\"># لا تفعل</span>\ncurl <span class=\"hljs-string\">&quot;.../memory/recall?key=mk_...&quot;</span>\n\n<span class=\"hljs-comment\"># افعل</span>\ncurl -H <span class=\"hljs-string\">&quot;Authorization: Bearer mk_...&quot;</span> .../memory/recall</code></pre></li>\n<li><strong>انتظر <code>Retry-After</code> ثانية</strong> إذا وجب استخدام <code>?key=</code></li>\n</ol>\n<p>راجع <a href=\"/docs/api/rate-limits\">حدود المعدل</a>.</p>\n<h2>بحث الذاكرة يُرجع نتائج فارغة</h2>\n<h3>الأعراض</h3>\n<ul>\n<li>يُرجع <code>GET /memory/search?q=...</code> فارغًا</li>\n<li>أعرف أن الذكريات موجودة</li>\n</ul>\n<h3>الحلول</h3>\n<ol>\n<li><strong>تحقق من وجود الذكريات</strong>: <code>GET /memory/recall</code></li>\n<li><strong>تحقق من صياغة البحث</strong> — لـ FTS5 صياغة محددة</li>\n<li><strong>جرّب استعلامًا أبسط</strong> — <code>?q=docker</code> بدلًا من <code>?q=docker+swarm+deployment</code></li>\n<li><strong>استخدم البحث الدلالي</strong> للاستعلامات المفاهيمية: <code>GET /memory/semantic-search?q=...</code></li>\n</ol>\n<p>راجع <a href=\"/docs/concepts/fts5-search\">بحث FTS5</a>.</p>\n<h2>الذكريات لا تستمر</h2>\n<h3>الأعراض</h3>\n<ul>\n<li>يُرجع POST /memory نجاحًا</li>\n<li>لا يُظهرها GET /memory/recall</li>\n</ul>\n<h3>الحلول</h3>\n<ol>\n<li><strong>تحقق من نفس Mind Key</strong> — مفاتيح مختلفة = عقول مختلفة</li>\n<li><strong>تحقق من الاستجابة</strong> — يُرجع POST <code>{ &quot;id&quot;: &quot;mem_...&quot;, &quot;status&quot;: &quot;stored&quot; }</code></li>\n<li><strong>جرّب GET /memory</strong> (قائمة JSON) بدلًا من /memory/recall (نص)</li>\n<li><strong>تحقق من المرشّح</strong> — <code>?category=</code> أو <code>?tag=</code> قد يخفيها</li>\n</ol>\n<h2>الأدوات لا تظهر في Claude Desktop</h2>\n<h3>الأعراض</h3>\n<ul>\n<li>يُظهر Claude Desktop 0 أدوات</li>\n<li>لا توجد أيقونة 🔌</li>\n</ul>\n<h3>الحلول</h3>\n<ol>\n<li><strong>أعد تشغيل Claude Desktop بالكامل</strong> (Cmd+Q)</li>\n<li><strong>تحقق أن ملف الإعداد</strong> JSON صالح</li>\n<li><strong>تحقق من Node.js 18+</strong> مثبت</li>\n<li><strong>شغّل MCP يدويًا</strong>: <code>npx -y synapse-mcp-api@latest</code></li>\n<li><strong>تحقق من السجلات</strong>: <code>~/Library/Logs/Claude/mcp.log</code></li>\n</ol>\n<p>راجع <a href=\"/docs/mcp/troubleshooting\">استكشاف أخطاء MCP</a>.</p>\n<h2>Synapse غير متصل</h2>\n<h3>الأعراض</h3>\n<ul>\n<li>لا يمكن الوصول إلى synapse.schaefer.zone</li>\n<li>curl ينتهي بانتهاء المهلة</li>\n</ul>\n<h3>الحلول</h3>\n<ol>\n<li><strong>تحقق من إنترنتك</strong> — جرّب موقعًا آخر</li>\n<li><strong>تحقق من صحة Synapse</strong>: <code>curl https://synapse.schaefer.zone/health</code></li>\n<li><strong>انتظر</strong> — قد يكون انقطاعًا مؤقتًا أو نشرًا</li>\n<li><strong>تحقق من صفحة الحالة</strong> (إن وُجدت)</li>\n</ol>\n<p>للاستضافة الذاتية: تحقق من حالة حاوية Docker، اتصال قاعدة البيانات.</p>\n<h2>أخطاء قاعدة البيانات</h2>\n<h3>الأعراض</h3>\n<ul>\n<li>500 Internal Server Error</li>\n<li>&quot;Database connection failed&quot;</li>\n</ul>\n<h3>الحلول</h3>\n<p>للاستضافة الذاتية:</p>\n<ol>\n<li><strong>تحقق من تشغيل PostgreSQL</strong>: <code>docker ps | grep postgres</code></li>\n<li><strong>تحقق من DATABASE_URL</strong> في البيئة</li>\n<li><strong>تحقق من الترحيلات</strong>: <code>npm run migrate:check</code></li>\n<li><strong>تحقق من مساحة القرص</strong>: <code>df -h</code></li>\n</ol>\n<p>للمُستضاف: أبلغ الدعم.</p>\n<h2>الـ Webhook لا يعمل</h2>\n<h3>الأعراض</h3>\n<ul>\n<li>سجّلت webhook لكن لا أتلقى استدعاءات</li>\n<li>لا POST إلى عنوان URL الخاص بك</li>\n</ul>\n<h3>الحلول</h3>\n<ol>\n<li><strong>تحقق أن عنوان URL قابل للوصول</strong>: <code>curl -X POST your-url -d &#39;{}&#39;</code></li>\n<li><strong>تحقق من مرشّح الأحداث</strong> — <code>memory.*</code> يطابق جميع أحداث الذاكرة</li>\n<li><strong>اختبر الـ webhook</strong>: <code>POST /webhooks/:id/test</code></li>\n<li><strong>تحقق أن الـ webhook مُمكَّن</strong>: <code>GET /webhooks/:id</code></li>\n<li><strong>تحقق من SSL</strong> — يتطلب Synapse HTTPS صالحًا لعناوين URL للـ webhooks</li>\n</ol>\n<p>راجع <a href=\"/docs/api/webhooks\">Webhooks API</a>.</p>\n<h2>مهمة Cron لا تعمل</h2>\n<h3>الأعراض</h3>\n<ul>\n<li>أنشأت مهمة cron لكنها لا تعمل</li>\n<li><code>next_run</code> لا يُحدّث</li>\n</ul>\n<h3>الحلول</h3>\n<ol>\n<li><strong>تحقق من صياغة الجدول</strong> — يجب أن تكون cron 5 حقول صالح OR عدد ثوانٍ صحيح</li>\n<li><strong>تحقق أن نقطة النهاية مسموحة</strong> — يجب أن تكون http(s)، بلا عناوين IP خاصة</li>\n<li><strong>تحقق أن المهمة مُمكَّنة</strong>: <code>GET /cron</code></li>\n<li><strong>انتظر الوقت المجدول التالي</strong> — cron ليس فوريًا</li>\n</ol>\n<p>راجع <a href=\"/docs/api/cron\">Cron والمجدول</a>.</p>\n<h2>تحتاج مزيدًا من المساعدة؟</h2>\n<ol>\n<li><strong>تحقق من الوثائق الموجودة</strong>: <a href=\"https://synapse.schaefer.zone/docs\">https://synapse.schaefer.zone/docs</a></li>\n<li><strong>ابحث في الوثائق</strong>: <code>GET /docs/search?q=your+question</code></li>\n<li><strong>افتح issue</strong>: <a href=\"https://gitlab.com/schaefer-services/synapse/-/issues\">https://gitlab.com/schaefer-services/synapse/-/issues</a></li>\n<li><strong>تواصل</strong>: راجع صفحة <code>/support</code></li>\n</ol>\n<h2>الخطوات التالية</h2>\n<ul>\n<li><a href=\"/docs/api/errors\">الأخطاء ومعالجتها</a></li>\n<li><a href=\"/docs/faq/api-faq\">أسئلة الـ API الشائعة</a></li>\n<li><a href=\"/docs/mcp/troubleshooting\">استكشاف أخطاء MCP</a></li>\n</ul>\n","urls":{"html":"/docs/faq/troubleshooting","text":"/docs/faq/troubleshooting?format=text","json":"/docs/faq/troubleshooting?format=json","llm":"/docs/faq/troubleshooting?format=llm"},"translations_available":["en","zh","hi","es","fr","ar","pt","ru","ja","de","it","ko","nl","pl","tr","sv","vi","th","id","uk"]}