ماذا لو تذكر مساعدك الذكاء الاصطناعي كل قرار معماري، وإصلاح الأخطاء، وجلسة إعادة هيكلة على مدار أسابيع من التطوير؟ **Claude-mem** يلغي مشكلة فقدان السياق من خلال التقاط ملاحظات استخدام الأداة تلقائيًا، وضغطها في ملخصات دلالية، وحقن التاريخ ذي الصلة في كل جلسة Claude Code جديدة.
المشكلة: فقدان السياق في التطوير بمساعدة الذكاء الاصطناعي
كل جلسة Claude Code تبدأ كصفحة بيضاء. عندما تغلق محطتك الطرفية أو تفصل الاتصال من جلسة، ينسى Claude كل شيء؛ هيكل مشروعك، قرارات إعادة الهيكلة الأخيرة، اكتشافات التصحيح، والأنماط المعمارية. هذا يجبرك على شرح قاعدة التعليمات البرمجية الخاصة بك بشكل متكرر، مما يهدر الرموز المميزة على سياق زائد ويقطع استمرارية سير العمل.
يتغلب المطورون حاليًا على هذه المشكلة من خلال الاحتفاظ يدويًا بملفات CLAUDE.md، أو تدوين الملاحظات في مستندات منفصلة، أو إعادة شرح سياق المشروع في بداية كل جلسة. هذه الأساليب هشة، وتستغرق وقتًا طويلاً، ولا تلتقط أبدًا الثراء الكامل لتاريخ تطويرك. يحل Claude-mem هذه المشكلة من خلال مراقبة كل استدعاء للأداة تلقائيًا، وضغط المخرجات في ذكريات دلالية قابلة للبحث، واسترجاع السياق ذي الصلة بذكاء عندما تحتاج إليه.
هل تريد منصة متكاملة وشاملة لفريق المطورين لديك للعمل معًا بأقصى إنتاجية؟
Apidog يلبي جميع متطلباتك، ويحل محل Postman بسعر أكثر بأسعار معقولة!
button
فهم بنية Claude-mem
يعمل Claude-mem كنظام ضغط ذاكرة دائم يتصل بدورة حياة Claude Code. يقوم بالتقاط مخرجات الأدوات—عادة من 1,000 إلى 10,000 رمز مميز—ويضغطها إلى ملاحظات دلالية بحجم 500 رمز مميز تقريبًا باستخدام Claude's Agent SDK. تُصنف هذه الملاحظات حسب النوع (قرار، إصلاح خطأ، ميزة، إعادة هيكلة، اكتشاف، تغيير) وتُوسم بالمفاهيم ذات الصلة ومراجع الملفات، ثم تُخزن في قاعدة بيانات SQLite محلية بقدرات بحث نص كامل.
يستخدم النظام خمس خطافات لدورة الحياة لالتقاط السياق:
- SessionStart (بدء الجلسة): يحقن السياق من الجلسات السابقة عند البدء
- UserPromptSubmit (إرسال موجه المستخدم): يلتقط استفساراتك للتعرف على الأنماط
- PostToolUse (بعد استخدام الأداة): يراقب كل تنفيذ للأداة ومخرجاتها
- Stop (إيقاف): ينشئ ملخصات الجلسة عندما ينتهي Claude من الاستجابة
- SessionEnd (إنهاء الجلسة): ينهي تخزين الجلسة والتنظيف
تتيح هذه البنية الكشف التدريجي—نظام استرجاع ذاكرة متعدد الطبقات يوازن بين التغطية وكفاءة الرموز المميزة. بدلاً من تفريغ سجلك بالكامل في السياق، يسترجع Claude-mem الملاحظات في طبقات، مما يوفر حوالي 2,250 رمزًا مميزًا لكل جلسة مقارنة بإدارة السياق اليدوية.
التثبيت ومتطلبات النظام
يتطلب Claude-mem Node.js 18.0.0 أو أحدث، وآخر إصدار من Claude Code مع دعم الإضافات، وBun كبيئة تشغيل JavaScript ومدير عمليات (يُثبت تلقائيًا إذا كان مفقودًا). يتضمن SQLite 3 للتخزين الدائم. تعمل الإضافة عبر الأنظمة الأساسية على Windows وmacOS وLinux.

تثبيت سريع
ثبّت Claude-mem مباشرة من سوق الإضافات بأمرين:
/plugin marketplace add thedotmack/claude-mem
/plugin install claude-mem
أعد تشغيل Claude Code بعد التثبيت. تقوم الإضافة تلقائيًا بتنزيل الثنائيات المُعدة مسبقًا، وتثبيت التبعيات بما في ذلك Bun وSQLite، وتكوين الخطافات لإدارة دورة حياة الجلسة، وبدء تشغيل خدمة العامل تلقائيًا في جلستك الأولى.

التثبيت المتقدم من المصدر
للتطوير أو الاختبار، استنسخ وقم بالبناء من المصدر على GitHub:
git clone https://github.com/thedotmack/claude-mem.git
cd claude-mem
npm install
npm run build
npm run worker:start
هذا النهج مفيد إذا كنت بحاجة إلى تعديل المكون الإضافي أو تشغيل ميزات تجريبية مثل Endless Mode.

التحقق بعد التثبيت
بعد التثبيت، تحقق من أن كل شيء يعمل:
- تحقق من تثبيت المكون الإضافي:
cat plugin/hooks/hooks.json
- تحقق من أن خدمة العامل قيد التشغيل:
curl http://localhost:37777/api/health
- عرض سجلات العامل الأخيرة:
npm run worker:logs
اختبر استرجاع السياق ببدء جلسة Claude Code جديدة. يجب أن ترى السياق من الجلسات السابقة محملًا تلقائيًا في الموجه الأولي.
تخزين البيانات والتكوين
يخزن Claude-mem جميع البيانات محليًا في ~/.claude-mem/:
- قاعدة البيانات:
~/.claude-mem/claude-mem.db(SQLite مع بحث FTS5) - ملف PID:
~/.claude-mem/.worker.pid - ملف المنفذ:
~/.claude-mem/.worker.port - السجلات:
~/.claude-mem/logs/worker-YYYY-MM-DD.log - الإعدادات:
~/.claude-mem/settings.json
تجاوز دليل البيانات الافتراضي بمتغير بيئة:
export CLAUDE_MEM_DATA_DIR=/custom/path
خيارات التكوين
تُدار الإعدادات في ~/.claude-mem/settings.json (يُنشأ تلقائيًا عند التشغيل الأول). تشمل التكوينات الرئيسية:
CLAUDE_MEM_CONTEXT_OBSERVATIONS: عدد الملاحظات المحقونة عند بدء الجلسة (الافتراضي: 50)CLAUDE_MEM_FOLDER_INDEX_ENABLED: تمكين/تعطيل ملفات CLAUDE.md التي تُنشأ تلقائيًا في المجلدات- اختيار النموذج للضغط المدعوم بالذكاء الاصطناعي
- إعدادات منفذ ومضيف العامل
- تكوين مستوى السجل
كيف يلتقط Claude-mem السياق ويعالجه
عند استخدام Claude Code مع تمكين claude-mem، يلتقط النظام كل استدعاء للأداة تلقائيًا. سواء كان Claude يقرأ ملفًا، أو ينفذ أمر bash، أو يبحث بأنماط glob، أو يعدل التعليمات البرمجية، يراقب claude-mem المدخلات والمخرجات.
تقوم خدمة العامل بمعالجة هذه الملاحظات وتستخرج:
- العنوان: وصف موجز لما حدث
- العنوان الفرعي: سياق إضافي
- السرد: شرح تفصيلي للنشاط
- الحقائق: التعلمات الرئيسية كنقاط تعداد
- المفاهيم: الوسوم والفئات ذات الصلة للبحث
- النوع: التصنيف (قرار، إصلاح خطأ، ميزة، إعادة هيكلة، اكتشاف، تغيير)
- الملفات: الملفات التي تم قراءتها أو تعديلها
يحدث هذا الضغط تلقائيًا بدون تدخل يدوي. قد تكون مخرجات الأداة الخام 5,000 رمز مميز، لكن الملاحظة الدلالية المخزنة في قاعدة البيانات هي حوالي 500 رمز مميز—تحافظ على المعنى مع التخلص من الضوضاء.
ملخصات الجلسة
عندما ينتهي Claude من الاستجابة (مما يؤدي إلى تشغيل خطاف Stop)، ينشئ claude-mem تلقائيًا ملخصًا للجلسة يحتوي على:
- الطلب: ما طلبته
- تم التحقيق فيه: ما استكشفه Claude للإجابة
- ما تم تعلمه: الاكتشافات والرؤى الرئيسية
- ما تم إنجازه: ما تم تحقيقه
- الخطوات التالية: إجراءات المتابعة الموصى بها
تُحقن هذه الملخصات في الجلسات المستقبلية جنبًا إلى جنب مع الملاحظات الفردية، مما يوفر تفاصيل دقيقة وسياق سردي عالي المستوى.
استخدام أدوات بحث MCP للاستعلام عن ذاكرتك
يوفر Claude-mem أربع أدوات MCP تتبع نمط سير عمل فعال للرموز المميزة من 3 طبقات. هذا التصميم يسترجع السياق تدريجيًا، مما يقلل من استخدام الرموز المميزة مع زيادة الصلة إلى أقصى حد.
سير العمل ذو الطبقات الثلاث
search(بحث): احصل على فهرس مدمج مع مُعرفات (حوالي 50-100 رمز مميز لكل نتيجة)timeline(الجدول الزمني): احصل على سياق زمني حول النتائج المثيرة للاهتمامget_observations(الحصول على الملاحظات): استرجع التفاصيل الكاملة فقط للمُعرفات المصفاة (حوالي 500-1,000 رمز مميز لكل نتيجة)
يحقق هذا النهج حوالي 10 أضعاف توفير الرموز المميزة من خلال التصفية قبل استرجاع التفاصيل الكاملة.
أدوات MCP المتاحة
search(بحث): ابحث في فهرس الذاكرة باستخدام استعلامات النص الكامل. قم بالتصفية حسب النوع أو التاريخ أو المشروع.timeline(الجدول الزمني): احصل على سياق زمني حول ملاحظة أو استعلام محدد. مفيد لفهم ما أدى إلى قرار معين أو إصلاح خطأ.get_observations(الحصول على الملاحظات): استرجع تفاصيل الملاحظة الكاملة حسب المُعرفات. قم دائمًا بتجميع مُعرفات متعددة في مكالمة واحدة لتقليل الحمل الزائد.__IMPORTANT(مهم): توثيق سير العمل الذي يكون دائمًا مرئيًا لـ Claude، ويشرح كيفية استخدام نظام الذاكرة بفعالية.
أنماط الاستخدام الأمثلة
ابحث عن إصلاح خطأ معين:
// الخطوة 1: البحث عن الخطأ
search(query="authentication bug", type="bugfix", limit=10)
// الخطوة 2: مراجعة الفهرس، تحديد المُعرفات ذات الصلة (على سبيل المثال، #123، #456)
// الخطوة 3: استرجاع التفاصيل الكاملة للملاحظات ذات الصلة
get_observations(ids=[123, 456])
استكشف القرارات المعمارية الأخيرة:
search(query="database schema", type="decision", limit=5)
ابحث عن كل ما يتعلق بملف معين:
search(query="worker-service.ts", limit=20)
استعلامات اللغة الطبيعية
يمكنك أن تسأل Claude بشكل طبيعي عن تاريخ مشروعك:
- "ماذا قررنا بشأن معالجة الأخطاء؟"
- "كيف طبقنا المصادقة؟"
- "ما الأخطاء التي أصلحناها في طبقة واجهة برمجة التطبيقات (API)؟"
- "أرني التغييرات في مخطط قاعدة البيانات"
يستدعي Claude تلقائيًا أدوات MCP المناسبة لاسترجاع السياق ذي الصلة، مقدمًا النتائج مع استشهادات URI من نوع claude-mem:// التي تشير إلى ملاحظات محددة.
ملفات سياق المجلدات والتوليد التلقائي لـ CLAUDE.md
يقوم Claude-mem تلقائيًا بإنشاء ملفات CLAUDE.md في مجلدات المشروع، مما ينشئ جداول زمنية للنشاط تكمل قاعدة بيانات الذاكرة العالمية.
كيف يعمل سياق المجلدات
عندما تعمل مع الملفات في مجلد، يقوم claude-mem بما يلي:
- يحدد مسارات المجلدات الفريدة من الملفات التي تم التعامل معها
- يستعلم عن الملاحظات الأخيرة ذات الصلة بكل مجلد
- ينشئ جدولًا زمنيًا منسقًا للنشاط
- يكتبها إلى CLAUDE.md في هذا المجلد (داخل علامات
<claude-mem-context>)
يحتوي ملف CLAUDE.md لكل مجلد على قسم "النشاط الأخير" الذي يعرض معرفات الملاحظات، والطوابع الزمنية، ومؤشرات النوع (إصلاحات الأخطاء، الميزات، الاكتشافات)، والعناوين الموجزة، وتقدير عدد الرموز المميزة.
الحفاظ على محتوى المستخدم
المحتوى المُنشأ تلقائيًا يتم لفه داخل علامات <claude-mem-context>. أي محتوى تكتبه خارج هذه العلامات يتم الحفاظ عليه عند إعادة إنشاء الملف. هذا يتيح لك:
- إضافة توثيقك الخاص فوق أو تحت القسم المُنشأ
- كتابة تعليمات خاصة بالمجلد لـ Claude
- تضمين ملاحظات معمارية أو اتفاقيات
مثال على هيكل CLAUDE.md:
# وحدة المصادقة
يحتوي هذا المجلد على جميع التعليمات البرمجية المتعلقة بالمصادقة.
اتبع الأنماط المعمول بها لمقدمي المصادقة الجدد.
<claude-mem-context>
# النشاط الأخير
| المعرف | الوقت | النوع | العنوان | الرموز المميزة |
|----|------|------|-------|--------|
| #1234 | 4:30 مساءً | 🔵 | تنفيذ مصادقة المستخدم | ~250 |
| #1235 | 4:45 مساءً | 🔴 | إصلاح خطأ إعادة التوجيه لتسجيل الدخول | ~180 |
</claude-mem-context>
## ملاحظات يدوية
- مقدمو OAuth يذهبون إلى /providers/
- التعامل مع الجلسات يستخدم Redis
ضوابط الخصوصية والأمان
يوفر Claude-mem ضوابط خصوصية دقيقة لمنع البيانات الحساسة من الدخول إلى نظام الذاكرة.
علامات المحتوى الخاص
لف المحتوى الحساس في علامات <private> لاستبعاده من التخزين:
<private>
API_KEY=sk-live-abc123xyz789
DATABASE_PASSWORD=supersecret456
</private>
تضمن المعالجة الطرفية أن المحتوى الخاص لا يصل أبدًا إلى قاعدة البيانات. هذا أمر بالغ الأهمية لمفاتيح API، ووثائق الاعتماد، والمنطق الخاص.
نظام الخصوصية ذو العلامات المزدوجة
يستخدم Claude-mem نهج العلامات المزدوجة:
<private>: خصوصية يسيطر عليها المستخدم للمحتوى الحساس<claude-mem-context>: علامات على مستوى النظام تمنع تخزين الملاحظات المتكرر
واجهة مستخدم عارض الويب والمراقبة في الوقت الفعلي
يشغل Claude-mem عارض ويب على http://localhost:37777 لتصور تدفق الذاكرة في الوقت الفعلي. تعرض الواجهة:
- تدفق الملاحظات المباشر مع مؤشرات الرموز التعبيرية للأهمية
- الجدول الزمني للجلسة مع علامات زمنية متسلسلة
- واجهة بحث للاستعلام عن الذكريات
- لوحة إعدادات لضبط التكوينات
- تبديل الإصدارات بين القنوات المستقرة والتجريبية
واجهة المستخدم هذه اختيارية للاستخدام الأساسي ولكنها لا تقدر بثمن لفهم ما يلتقطه claude-mem وكيف ينظم تاريخ تطويرك.
ميزات بيتا: الوضع اللانهائي (Endless Mode)
تقدم قناة بيتا "الوضع اللانهائي" (Endless Mode)، وهي بنية ذاكرة تحاكي الطبيعة الحيوية للجلسات الممتدة. بدلاً من الوصول إلى حدود السياق بعد 50 استخدامًا للأداة، يعد الوضع اللانهائي بحوالي 1000 استخدام - زيادة بمقدار 20 ضعفًا. يحقق ذلك عن طريق ضغط مخرجات الأداة في الوقت الفعلي، مما يقلل الرموز المميزة بنسبة 95% تقريبًا ويغير القياس من O(N²) التربيعي إلى O(N) الخطي.
المقايضة: يضيف إنشاء الملاحظات 60-90 ثانية لكل استدعاء للأداة. لجلسات البرمجة العميقة والمدروسة التي تمتد لأيام أو أسابيع، قد يكون هذا التأخير مقبولًا. أما للاستخدام السريع والمتتابع للأدوات، فقد يكون مكلفًا.
قم بتمكين ميزات بيتا من واجهة مستخدم عارض الويب على http://localhost:37777 ← الإعدادات ← قناة الإصدار.
استكشاف المشكلات الشائعة وإصلاحها
خدمة العامل لا تبدأ
إذا فشل العامل في البدء على المنفذ 37777:
- تحقق مما إذا كان المنفذ مشغولًا بالفعل:
lsof -i :37777
- قم بتكوين منفذ بديل:
export CLAUDE_MEM_WORKER_PORT=8080
- ابدأ العامل يدويًا:
bun plugin/scripts/worker-service.cjs
الذاكرة لا يتم حفظها
إذا لم يتذكر Claude الجلسات السابقة:
- تحقق من أن العامل قيد التشغيل:
npm run worker:status
- تحقق من وجود ملف قاعدة البيانات:
ls -la ~/.claude-mem/claude-mem.db
- راجع سجلات العامل بحثًا عن الأخطاء:
npm run worker:logs
مشكلات حقن السياق
إذا ظهر سياق كثير جدًا أو قليل جدًا عند بدء الجلسة:
اضبط حد الملاحظات:
export CLAUDE_MEM_CONTEXT_OBSERVATIONS=10 # تخفيض
export CLAUDE_MEM_CONTEXT_OBSERVATIONS=100 # زيادة
ملفات CLAUDE.md فارغة
إذا أنشأ claude-mem ملفات CLAUDE.md فارغة في مشروعك، فهذه مشكلة معروفة في الإصدار 9.0.5. تشمل الحلول المؤقتة الحالية حذف الأدلة التي تم إنشاؤها يدويًا، أو إضافة أنماط إلى .gitignore، أو انتظار الإصلاح في إصدار لاحق.
تكامل Claude Desktop
يعمل Claude-mem مع Claude Desktop من خلال تكوين خادم MCP. أضف خادم بحث MCP إلى تكوين Claude Desktop الخاص بك، ووجهه إلى نص خادم MCP البرمجي في تثبيت claude-mem، ثم أعد تشغيل Claude Desktop.
بمجرد التكوين، اسأل بشكل طبيعي عن العمل السابق:
- "ماذا فعلنا في الجلسة الماضية؟"
- "هل أصلحنا هذا الخطأ من قبل؟"
- "كيف طبقنا المصادقة؟"
استخدم عارض الويب على localhost:37777 للتحقق من التقاط الذكريات وتحقق من سجلات Claude Desktop إذا فشل الاتصال.

أوامر إدارة العامل اليدوية
من دليل claude-mem، يمكنك إدارة خدمة العامل:
npm run worker:start # بدء خدمة العامل
npm run worker:stop # إيقاف خدمة العامل
npm run worker:restart # إعادة تشغيل خدمة العامل
npm run worker:logs # عرض سجلات العامل
npm run worker:status # التحقق من حالة العامل
الخلاصة
يحول Claude-mem Claude Code من مساعد عديم الحالة إلى شريك تطوير دائم يجمع المعرفة حول قاعدة تعليماتك البرمجية بمرور الوقت. من خلال التقاط استخدام الأداة تلقائيًا، وضغط الملاحظات في ذكريات قابلة للبحث، واسترجاع السياق ذي الصلة بذكاء، فإنه يلغي بناء السياق المتكرر الذي يبطئ عملية التطوير بمساعدة الذكاء الاصطناعي.
توفر بنية الكشف التدريجي للنظام—استرجاع متعدد الطبقات باستخدام أدوات MCP، وملفات CLAUDE.md المستندة إلى المجلدات، وضوابط الخصوصية—كفاءة في الرموز المميزة تبلغ حوالي 10 أضعاف مقارنة بالإدارة اليدوية للسياق مع الحفاظ على التوطين الكامل للبيانات والأمان.
عند بناء واجهات برمجة التطبيقات (APIs) أو العمل مع الخدمات الخارجية في سير عملك المحسن بواسطة Claude-mem، قم بتبسيط عملية الاختبار باستخدام Apidog. إنه يوفر اختبارًا مرئيًا لواجهة برمجة التطبيقات، وإنشاء توثيق تلقائي، وتصحيح أخطاء تعاوني يكمل إعداد الذاكرة الدائمة لديك.
button
