--- name: reasoning-bank description: ذاكرة مسارات الحل الناجحة (trajectory memory) مع استرجاع تشابهي. طبقة إضافية فوق .learnings + graph-memory — تخزّن كيف حُلّت مهمة (خطوات+أدوات+قرارات) وتسترجع أقرب مسار ناجح لمهمة جديدة. صفر تبعية، صفر مفتاح، on-demand فقط (لا hot-path). ---
ReasoningBank — ذاكرة مسارات الحل (skill أصيل)
> الأصل: بُني نظيفاً بالكامل عندنا، مستلهَم من فكرة ReasoningBank في Ruflo دون أي كود مأخوذ أو أي سلبية. TF-IDF cosine محلي (حتمي، بلا مفتاح، بلا تبعية خارجية).
الفكرة الجوهرية
.learnings/ تخزّن الدروس (نصّ)، graph-memory يخزّن العلاقات. الفجوة = لا استرجاع تلقائي بالتشابه لمسار حلّ ناجح. ReasoningBank يسدّها: يخزّن المسار (task + steps + tools + outcome) ويسترجع أقرب مسار ناجح لمهمة جديدة → نعيد استخدام تفكير مُثبت بدل البدء من الصفر.الاستخدام (on-demand فقط)
cd skills/reasoning-bank/scriptsتخزين مسار ناجح (بعد إنجاز مهمة مهمة)
python3 rb_cli.py add --task "بناء skill جديد" --domain coding \
--steps "اعزل|اكتب|اختبر|ثبّت|احقن|اربط portal" \
--tools "python|exec|edit" --outcome "29/29 اختبار صفر سلبية" --tags "skill|zero-downside"استرجاع أقرب مسار لمهمة جديدة
python3 rb_cli.py search "كيف أبني أداة جديدة بأمان" -k 3
python3 rb_cli.py search "..." --domain engineering --jsonإحصاء + الأكثر إعادة استخدام
python3 rb_cli.py stats
python3 rb_cli.py selftest # 15 اختبار (E2E + red-team)
المجالات (domain)
coding · engineering · research · media · ops · general — قابلة للتوسّع بحرّية.متى أستخدمه (القاعدة الذهبية)
- ✅ قبل مهمة جوهرية متكرّرة النمط (بناء skill، تحليل مشروع، Method Statement، تشخيص عطل):
searchأولاً لأرى إن حللتُ شبيهها → أعيد استخدام المسار. - ✅ بعد إنجاز مهمة مهمة بنجاح:
addلأحفظ المسار للمستقبل. - ❌ ليس في heartbeat / hot-path (on-demand فقط، صفر تكلفة دورية).
- ❌ لا أسرار KCPC حسّاسة إلا بإذن د. وائل (نفس قاعدة Ollama/graph-memory).
الضمانات (مُثبَتة E2E — 15 اختبار صفر فشل)
- استرجاع تشابهي صحيح (يجد المسار المطابق للنمط) + فلتر domain + min_score.
- red-team: بنك فارغ/سطر فاسد/query هراء/أداء 9ms لـ500 عنصر/حتمية — كلها مُسكّرة.
- صفر سلبية: إضافي بحت (لا يمسّ .learnings ولا graph-memory ولا config)، JSONL محلي معزول، بلا تبعية/مفتاح.
البنية
scripts/reasoningbank.py— المحرّك (Trajectory + TF-IDF cosine retrieval).scripts/rb_cli.py— واجهة CLI.data/trajectories.jsonl— المخزن (human-readable، greppable).