تخطَّ إلى المحتوى
kazma.
البحث في كاظمه والتوثيق
EN

خارطة الطريق والمستقبل

فصلٌ صادق بين ما تفعله كاظمه اليوم وما هو مخطَّط أو طموح أو موصول جزئيًا. أُعيد فحص كل صف مقابل الشيفرة في 2026-09-27.


1. كيفية قراءة هذا الملف

Section titled “1. كيفية قراءة هذا الملف”

تُوسَم العناصر:

  • ✅ مُنفَّذ وموصول — يعمل في بيئة التشغيل الافتراضية، متحقَّق منه في الشيفرة.
  • 🟡 مُنفَّذ لكن غير موصول بالكامل — توجد شيفرة لكنها غير متصلة في المسار الافتراضي.
  • 🔴 مخطَّط / على خارطة الطريق — ليس في قاعدة الشيفرة، أو مُعلَن عنه كهدف في ROADMAP.md.

القدرةالحالةملاحظات
حلقة ReAct لمشرف LangGraph✅graph_builder.py.
استدعاء الأدوات مع موفّرات متوافقة مع OpenAI✅httpx، من دون SDK.
احتياط الأدوات NVIDIA NIM✅llm_provider.py:285-300.
مخطط JSON صارم للأدوات✅additionalProperties: false دائمًا؛ وKAZMA_STRICT_TOOLS=1 لأجل function.strict في OpenAI.
مخرجات منظَّمة (response_format)✅اختياري على LLMProvider.chat / chat_stream؛ ولا يُفرَض على أدوار المشرف.
خطافات ما قبل/ما بعد الأداة✅agent/tool_hooks.py. رفض/إعادة كتابة/مراقبة. لا يمكنها تخطي HITL. ‏KAZMA_TOOL_HOOKS=0.
وضع التخطيط من الدرجة الأولى✅/plan on · /plan go. قراءة هيكلية فقط، ثم تنفيذ. KAZMA_PLAN_MODE=0.
البث (SSE)✅chat_stream() + invoke_llm_chat()؛ يستهلك SSE/WS حدث on_chat_model_stream الاصطناعي.
ضغط السياق (تتلخيص عبر LLM)✅compaction.py.
الضغط مع استرجاع الذاكرة + نقطة التفتيش🟡محوّل الذاكرة موصول على المسارات الرئيسة؛ لكن checkpoint_manager لا يزال اختياريًا.
معالجة تحديد المعدل (429)✅تراجع أُسّي + Retry-After في llm_provider.py وفي /messages الأصلي لAnthropic. استنفاد 429 يعطي transient=True + kind=rate_limit_exhausted (لا إعادة محاولة لدى الموفّر نفسه).
قاطع دائرة التكلفة موصول تلقائيًا✅يُنشأ CostCircuitBreaker لكل وكيل (agent_runner.py) ويُدار على الحلقة الحية — record_user_interaction() عند كل رسالة واردة، وبوابة should_halt()، وrecord_cost() بعد كل استدعاء LLM ‏(graph_builder.py). مكشوف على لوحة التحكم عبر .status().

محدَّث 2026-09-27 — كل ذاكرة قابلة للعثور، واسترجاع مرتَّب بالأدلة، وملخصات أسبوعية، ونبذة عني، والنسيان، ومرآة Postgres تُبقى كاملة.
المتبقي: docs/plans/MEMORY_REMAINING.md. الدليل الكامل: الذاكرة وRAG.

القدرةالحالةملاحظات
المحرك المعرفي V2✅رسم معتقدات ثنائي الزمن + حلقات من 4 طبقات + DAGs إجرائية. رصة ذاكرة واحدة (أُزيلت V1).
RAG لكل دور✅recall() الخاصة بV2 (معتقدات + حلقات + PPR) عند كل دور للمستخدم.
حقن الذاكرة في الضغط✅استرجاع V2 يغذّي عملية ضغط. ملخصها لا يُخزَّن في الذاكرة (2026-09-27): كل دور هو أصلًا ذاكرة، والملخصات الأسبوعية تحفظ الجوهر.
جسر ذاكرة السرب✅نتائج العمال + SoulEvolution تُكتب في V2.
رسم معتقدات ثنائي الزمن✅محمولات وظيفية/مجموعات/حالات؛ ‏valid_until/invalidated_at.
PPR لرسم الأنا محليًا✅قفزتان، N≤200، تعزيز استرجاع α=0.15.
طابور توحيد متين✅طابور مهام memory_ops.db + macro_sleep كل 6 ساعات + نسخ احتياطي/تصدير كل 6 ساعات + إعادة توحيد كل 24 ساعة.
DAGs للأفعال الإجرائية✅ثقة مهارة ملسَّنة بLaplace ‏C(d)=(S+1)/(N+2).
نسخ احتياطي + تصدير✅sqlite3.backup() أصلي + JSONL/GraphML كل 6 ساعات؛ لقطات restic، محلية وخارج الموقع.
المُقطِّع العربي (FTS5)✅FTS5 لحلقات V2 + تطبيع متماثل.
ذاكرة متعددة التثبيتات🟡الذكريات والحقائق تُطابَق إلى Postgres وتُبقى كاملة عبر مزامنة مضادة للإنتروبيا؛ والاسترجاع يقرأ ما كتبته تثبيتات أخرى. المتجهات والرسم يبقيان محليين في كل تثبيت.
استرجاع مرتَّب بالأدلة✅لا تُعرَض ذاكرة إلا إذا اجتاز معناها وكلماتها عتباتٍ لكل نوع مضبوطةً على معيار (memory/benchmark.py)؛ ولا يُحقَن شيء عندما لا يطابق شيء.
ملخصات موضوعية أسبوعية✅ملخص واحد لكل موضوع في كل أسبوع، يكتبه النموذج، ويُسترجَع بعد السجل.
نبذة عني✅الإعدادات → الذاكرة: نص يكتبه المستخدم، يُقرأ في بداية كل رد.
النسيان، وعدم تذكّر محادثة، والتصدير✅شواهد قبور وسجل نسيان يسأله كل كاتب؛ /memory off على منصات الدردشة؛ GET /api/memory/v2/export.
الذاكرة المستخدمة، لكل إجابة✅كل دور يخزّن أيّ ذكريات وحقائق وملخصات أُعطيت للنموذج، وتُعرَض في نشاطه.
checkpoint_manager في الضغط🟡لا يزال اختياريًا — نقاط تفتيش LangGraph تغطي الأدوار.

القدرةالحالةملاحظات
ستة أنماط إرسال✅dispatch/broadcast/pipeline/fan-out/consult/conditional.
التجميع (collect/first_valid/merge_all/vote/synthesize)✅aggregator.py.
قواطع دائرة (نصف مفتوحة بمسبار واحد)✅reliability.py.
إعادة المحاولة / المهلة / التحقق من المخرجات / تزامن محدود✅reliability.py.
نقاط تفتيش HITL للخط مع مهلة رفض تلقائي✅checkpoint_manager.py.
كشف دورات التسليم (عمق 5، زيارات 2)✅handoff_guards.py.
تحجيم تلقائي للعمال✅dispatch_inner يولّد عاملًا من swarm_templates.json حين لا يطابق أيّ عامل؛ ويُحصَّد العمال الخاملون بعد 5 دقائق.
مقاييس Prometheus✅حزمة prometheus-client اختيارية؛ نقطة نهاية /metrics في kazma_ui/metrics.py.

القدرةالحالةملاحظات
بوابة HITL للرسم (مقاطعة)✅نشطة في جميع مواقع بناء الإنتاج.
بوابة HITL لناقل السرب (مغلقة عند الفشل)✅swarm/safety.py.
HITL لنقطة تفتيش الخط✅checkpoint_manager.py.
توقيع HMAC للمهارات + التحقق✅hub/cli.py + hub/loader.py.
تفويض Ed25519 + AES-GCM🔴ليس في الشيفرة. المهارات تُتحقَّق بHMAC عند التحميل؛ ولا يوجد تفويض موقَّع بين الوكلاء.
مصادقة حامل Bearer لSSE في MCP✅mcp/manager.py:461-466.
مصادقة stdio لMCP✅حقن auth.type: env / arg مدعوم على خوادم stdio.
أسرار ConfigStore المدعومة بالخزنة✅المفاتيح الحساسة → خزنة AES عند ضبط KAZMA_VAULT_KEY (تصحيحات تدقيق 2026-07).
تعديل نقطة التفتيش عبر /undo / /edit✅مسار الرسم الحي عبر aget_state / aupdate_state.
صفحة تسجيل الدخول بالسر البعيد✅/login + POST /api/auth/login.
«طبقات ثقة» تشفيرية🔴مجرد راية الـHub المنطقية certified والإعداد trust: trusted لخادم MCP (يتخطى بطاقة موافقته).
فحوص تحصين kazma-security.yaml🔴لا شيفرة تقرأ ذلك الملف؛ إنه إعلان. ما يفرض الأمن يقع في الشيفرة وCI: بوابات الموافقة، وطبقة الالتزام، والخزنة، والبوابات الساكنة في tests/، وbandit في CI وDependabot.

6. المنصات وتجربة الاستخدام

Section titled “6. المنصات وتجربة الاستخدام”
القدرةالحالةملاحظات
محول Telegram (كامل الميزات)✅استطلاع طويل + webhook اختياري، وصوت، وتفاعلات، ولوحات مفاتيح.
محول Discord✅WebSocket للبوابة.
محول Slack✅وضع Socket / استطلاع.
واجهة الويب (SSE)✅/api/chat/stream.
دردشة WebSocket✅/ws/chat/{session_id} هو للقياس البعدي / استئناف المؤشر؛ وSSE ‏/api/chat/stream هو ناقل الرسم (أُزيل عميل الرسم الثاني عبر WS في 2026-09-30).
TUI✅Textual، للقراءة غالبًا.
تدويل EN/AR + RTL✅قاموس مدموج من الفهارس، وIBM Plex Sans / IBM Plex Sans Arabic، وجذر 14px مشترك.
استوديو X (/x)✅مؤلِّف + مخطِّط X-فقط (انشر الآن، وجدولة، وإعادة جدولة، وخيوط، وحذف). دردشة x_post تبقى HITL دائمًا. واجهة API الرسمية فقط.
بروتوكول المجلس🟡مسار سريع للتحية والوداع على منصات الدردشة؛ المحادثة العادية لا تدخل آلة أطواره (majlis.py).
الصوت على Discord/Slack/Web✅STT + TTS موصولان في جميع المنصات عبر voice_helpers.py (كانا لTelegram فقط).
الوسائط / المرفقات (صورة/مستند/فيديو)✅عقد Attachment على IncomingMessage/OutboundMessage؛ وارد+صادر على جميع المنصات + الويب /api/chat/upload.
أوامر الشرطة /undo و/edit✅يعالجها الرسم (_handle_undo/_handle_edit يعدّلان حالة نقطة التفتيش).
إعادة تشغيل السفر عبر الزمن والتفرّع✅SnapshotRecorder موصول في جميع مواقع بناء الرسم؛ استعادة /replay + تفرّع /fork + لوحة خط زمني /replay في واجهة الويب + أحداث لقطات SSE حية + /api/replay/*.

القدرةالحالةملاحظات
إعدادات موفّرات جاهزة (20: متوافقة مع OpenAI، أصلية، محلية، مخصصة)✅providers.py — تشمل Mistral/Together/Cohere/Fireworks/Perplexity/AI21/Groq/xAI/OpenRouter/NVIDIA.
موفّرات أصلية غير OpenAI✅AnthropicProvider ‏(/messages)، وAzureProvider (api-key+api-version)، وBedrockProvider (SigV4 + Converse)، وGeminiProvider (ADC). انظر موفّرات LLM.
Google Vertex AI (ADC)✅google_llm.py.
خوادم محلية (Ollama/LM Studio)✅معالجة مفاتيح وهمية.
MCP (stdio + SSE + Streamable HTTP)✅mcp/manager.py — Streamable HTTP (مواصفة MCP 2025-03-26) مع استئناف Mcp-Session-Id. أسطح عميل للموارد والأوامر التمهيدية وأخذ العينات والجذور (2026-08-25)؛ وأخذ العينات HITL مغلق الفشل. كاظمه أيضًا خادم MCP: ‏kazma mcp (stdio) يعرض أدواته على وكلاء آخرين، وأدوات الخطر خلف بوابة الموافقة نفسها.
مركز المهارات (سجل، توقيع، شهادة)✅hub/.
تتبّع Langfuse✅KazmaTracer؛ ‏logging.langfuse.enabled: auto عند وجود المفاتيح. KAZMA_LANGFUSE=0.
OpenTelemetry✅ اختياريفترات GenAI لكل استدعاء LLM وتنفيذ أداة بمجرد تثبيت opentelemetry-sdk وضبط نقطة نهاية OTLP (دليل التشغيل).
Cloudflare Pages / الحافة🔴غير منطبق — خدمة Python ذات حالة.
PostgreSQL (الوكيل الرئيس)✅خلفية من الدرجة الأولى لConfigStore/الجلسات/السرب/نقاط التفتيش؛ موافقات HITL المعلقة تُعدِّد خيوط Postgres (hitl_approval.py).

القدرةالحالةملاحظات
سجلات JSON منظَّمة✅logging.format: json.
مقاييس السرب (في الذاكرة + SQLite)✅MetricsCollector.
فترات تتبّع داخلية✅TraceStore (لوحة التحكم) + TracingEmitter (السرب).
أحداث قياس بعدي SSE✅/api/chat/stream + موجّه القياس البعدي.
تتبّع Langfuse✅موصول عبر KazmaTracer؛ يعمل تلقائيًا عند وجود المفاتيح (logging.langfuse.enabled: auto).
نقطة نهاية قشط Prometheus✅/metrics + /api/metrics في kazma_ui/metrics.py، مركّبة في app.py (كتلة البوابة النشطة). تصدر text/plain; version=0.0.4 بعدادات الوارد/الصادر/الأخطاء، والخيوط النشطة، والمحوّل، وعمق الطابور، ومقاييس السرب.
تصدير OpenTelemetry✅ اختياريفترات اصطلاحات دلالات GenAI عبر OTLP (دليل التشغيل). يبقى Langfuse ووحدة التحكم.

9. الخطوات التالية المقترحة

Section titled “9. الخطوات التالية المقترحة”

الذاكرة (2026-07): التقوية + رسم L2 + الموحِّد + واجهة الرسم منجزة.
ما تبقى من صقل الذاكرة/توسيعها في MEMORY_REMAINING.md فقط.

بنود مفتوحة أخرى:

  1. تراجع 429 — أُنجز في 2026-08-25 (عام + Anthropic؛ انظر GOAL المتبقي).
  2. OpenTelemetry — محلول: فترات GenAI تُشحن، اختياري (دليل التشغيل).
  3. المتجهات — بحث المعنى في الذاكرة دقيق ومحلي (sqlite-vec، أو NumPy)، مقيسًا بنحو 1 ms لكل 1,000 ذاكرة. يُستخدم pgvector عندما يملك خادم Postgres الامتداد (يُختار تلقائيًا) وQdrant خيار في الإعدادات؛ ولا يلزم أي منهما. متجهات مكتبة المعرفة تعيش في Chroma ويُعاد بناؤها من قطعها.
  4. هيكل IDE — CodeMirror 5 ‏fromTextArea + file_apply_patch / file_apply_patch_set ‏(Hands 0.11). جُرِّب Monaco وأُعيد (تعليق / تبويبات فارغة). فهرس قاعدة الشيفرة (ripgrep + رموز) شُحن 2026-08-25. ما زال /api/ide/lsp موجودًا؛ محرر الويب للصياغة فقط. kazma ask + ‏ACP stdio (رموز حية، وHITL على TTY، وsession/request_permission، وفروق منظَّمة، وsession/cancel).
  5. E2B + Temporal — محولات اختيارية (جزء 8 من رصة الصناعة). ‏python_exec غير الموثوق عبر Firecracker؛ وخطوات سرب متينة عبر Temporal. يبقى المخطِّط وHITL لكاظمه.

  • يقاوم هذا الملف عمدًا الإفراط في الوعود. حيثما يصف README/نص التسويق ميزة موصولة جزئيًا فقط، يقول عمود الحالة 🟡 مع السبب المحدد.
  • «الخطوات التالية المقترحة» هي توصيات التدقيق ذات الرأي، مرتَّبة بنسبة الأثر إلى الجهد. ليست التزامات.
  • يعكس هذا الملف واقع الشيفرة كما في v0.11+، لا مستقبليات التسويق.