Skip to main content

الأساسيات في الداخل، وكل شيء آخر على بُعد استدعاء واحد

كان وولفيش يُحمِّل موجه النظام مقدَّمًا: ملفات ذاكرة كاملة، وتفريغ حلقات يومين، وكتالوج نثري للأدوات بحجم 16 ألف رمز. إعادة تصميم السياق الرشيق (v1.0.203) تقلب ذلك. الموجه الآن يحمل الأساسيات فقط بالإضافة إلى فهرسين مُدمجين — فهرس القدرات وخريطة الذاكرة — والنموذج يسترجع كل شيء آخر بالأدوات، عند الطلب، في أجزاء من الثانية. موجه النظام لمحادثة جديدة هو ~5,000 رمز (كان ~44,000). أضف مخططات الأدوات الأساسية (~4 آلاف) فيكلف الطلب الجديد ≈9.4 ألف رمز مقابل ~94 ألفًا سابقًا — تخفيض بمقدار 10×.

ماذا يحتوي الموجه الجديد

الأقسام الشرطية تظهر فقط عندما تنطبق:
  • <variables> — متغيراتك المُعرَّفة في config.json (فقط عندما تكون قد عرَّفت أيًا منها)
  • طبقة الدور — تعليمات القائد/الوكيل في وضع سير العمل، متضمّنةً كتالوج <workflow_models> لدى القائد بالنماذج القابلة للإطلاق
  • <channel> — قواعد تنسيق القناة (مثل طبقة “بدون Markdown” في WhatsApp)
  • <local_model> — طبقة صدق صغيرة للنماذج المحلية (Ollama): الاعتراف عند تجاوز العمق، واقتراح نموذج أقدر، مع الامتثال الكامل إذا أصرّ المستخدم. لا شيء يُحجب — النماذج المحلية تحصل على نفس السياق الرشيق، ومجموعة الأدوات الأساسية الكاملة، وخريطة الذاكرة، واكتشاف الأدوات مثل النماذج السحابية.

ما الذي اختفى

أربعة أشياء حُذفت من تجميع السياق: لا شيء من تلك المعلومات ضاع. كلها تعيش على القرص، مُفهرَسة بواسطة cortex، على بُعد استدعاء أداة واحد — انظر أدوات الاسترجاع.

اقتصاديات الرموز

مقاسة فعليًا، لا مُتوقَّعة:
  • أتمتة تعمل كل ساعة انتقلت من 96,442 رمز إدخال (0.046/تشغيلة)إلى 5.1ألفرمزموجه(0.046/تشغيلة)** إلى **~5.1 ألف رمز موجه (0.019/تشغيلة).
  • بادئة الموجه ثابتة البايتات، ما يُحقق ~99% إصابات في ذاكرة الموجه المؤقتة لدى المزود مقاسة عبر 50 محادثة.
  • أسوأ حالة — تفعيل أثقل 10 قدرات دفعة واحدة — هي أساس ~9.6 ألف + تفعيلات ≈ 41.5 ألف رمز، ما زال أقل من نصف الحد الأدنى القديم.
ثلاثة خيارات تصميمية متعمَّدة تُبقي البادئة ثابتة البايتات لصالح تخزين المزود المؤقت:
  1. خريطة الذاكرة تتجدد مرة واحدة في اليوم التقويمي وتُقرِّب الأعداد إلى فئات خشنة، فلا تتقلب بين الأدوار.
  2. العدادات الحية (رقم التكرار، الأدوات المستدعاة) تركب الذيل المتطاير الصادر بدلاً من موجه النظام.
  3. تفعيل الأدوات محصور بالمحادثة — تحميل github في تشغيلة نبض قلب لا يُبطل أبدًا ذاكرة موجه محادثة حية.

فهرس القدرات

بدلاً من شحن مخطط كل أداة، يسرد قسم <capabilities> كل قدرة مُثبَّتة — بما فيها خوادم MCP — في سطر واحد لكل منها:
النموذج دائمًا يعرف ما هو موجود دون حمل المخططات. علامة [loaded] تُميِّز القدرات التي أدواتها قابلة للاستدعاء الآن (المجموعة الأساسية بالإضافة إلى أي شيء فُعِّل في هذه المحادثة)؛ كل شيء آخر يُحمَّل عند الطلب عبر tool_search أو tool_activate، وتصبح أدواته قابلة للاستدعاء في نفس الدور. بعد تجاوز 60 قدرة، يتقلص الباقي غير المُحمَّل إلى عدد مُجمَّع (…plus 23 more capabilities (187 tools) — tool_search finds any of them)، لذا فإن كلفة الفهرس في الموجه هي O(1) بعدد القدرات المُثبَّتة — يمكنك تثبيت مئة خادم MCP دون أن ينمو الموجه. انظر نظرة عامة على القدرات لكيفية عمل الاكتشاف والتفعيل والمجموعة الأساسية.

خريطة الذاكرة

قسم <memory_map> يُخبر النموذج بما هو موجود ليُسترجع — أبدًا لا المحتوى نفسه:
تحمل الخريطة أعداد السجلات لكل مصدر، ونطاقات التواريخ، وعناوين ملفات المعرفة، وأعداد المحادثات/المخرجات. الأعداد تُقرَّب إلى فئات خشنة (دقيقة تحت 20، ثم لأقرب 10، ثم لأقرب 50) والكتلة كلها مُخزَّنة مؤقتًا لكل يوم تقويمي، فتبقى متطابقة البايتات عبر كل أدوار اليوم — صديقة لذاكرة الموجه المؤقتة بحكم البناء.
خريطة الذاكرة خريطة، لا الأرض نفسها. عدد “~150 سجل حلقة” يُخبر النموذج بوجود تاريخ يستحق البحث — لكنه لا يُغني أبدًا عن استرجاع المحتوى الفعلي.

الاسترجاع بدلاً من الحقن

عقد التشغيل (agents.core.md) يُعلِّم النموذج معاملة نافذة سياقه كـ مجموعة عمل رشيقة: ما في الموجه هو الأساسيات، لا مدى ما يعرفه. الاستدعاء تقوده نية رسالتك، دون طلب صريح:
  • الإشارات المُعرَّفة — “أرسل لي خطة الرحلة”، “ذلك الملف”، “مثل المرة الماضية” — تعني أنك تعرف أنه يملكها. يبحث أولًا.
  • رائحة المهمة المتكررة — “أرسل إيميلًا إلى سارة” — تُحفِّز بحثًا سريعًا عن حالات سابقة: قد يكون هناك نمط أو قالب راسخ لإعادة استخدامه.
  • التفضيلات — يفحص خلاصة التفضيلات المُتعلَّمة في الموجه، ثم يبحث قبل التخمين.
  • مهام الحاضر الصِّرف — الطقس، عملية حسابية — لا تحتاج استدعاءً. يتصرف مباشرة.
والقاعدة الصارمة: بحثان بصياغتين مختلفتين قبل الادعاء بعدم التذكر أبدًا. إخفاق البحث ليس دليل غياب أبدًا. الفلسفة نفسها تنطبق على سجل المحادثة: المحادثات الطويلة تؤول إلى ملخص متدحرج مع ذيل حرفي، وأي شيء طُوي يمكن استعادته بـ conversation_read — انظر ضغط السياق.

أدوات الاسترجاع

المرجع الكامل لـ memory_search / memory_get / conversation_read.

نظرة عامة على القدرات

كيف يعمل اكتشاف الأدوات ونظام القدرات.

ضغط السياق

كيف تبقى المحادثات الطويلة ضمن نافذة السياق.

عديم الحالة بالتصميم

لماذا يحمل كل طلب المحادثة الكاملة.