عن المشروع

Dynamic Context Pruning (DCP) هو مكوّن إضافي لـ OpenCode يقلل تلقائيًا من استخدام الرموز (tokens) عبر إدارة سياق المحادثة. يوفر ثلاث استراتيجيات أساسية: الضغط (Compress) يستبدل محتوى المحادثة القديم بملخصات تقنية عالية الدقة باستخدام وضع النطاق (range mode) الذي يضغط المقاطع المتتالية، أو وضع الرسائل التجريبي (message mode) الذي يضغط الرسائل الفردية. إزالة التكرار (Deduplication) تحدد استدعاءات الأدوات المتكررة ذات الوسائط المتطابقة وتحتفظ فقط بأحدث مخرجات. تنقية الأخطاء (Purge Errors) تزيل المدخلات من استدعاءات الأدوات التي حدثت فيها أخطاء بعد عدد قابل للتكوين من الأدوار مع الحفاظ على رسائل الخطأ. يعمل المكوّن دون تعديل سجل الجلسة — يستبدل المحتوى المضغوط بعلامات نائبة قبل إرسال الطلبات إلى نموذج اللغة الكبير (LLM). يتم التكوين عبر ملف JSONC مع تجاوزات على مستوى المشروع، ويدعم حدود سياق لكل نموذج، وأنماط ملفات محمية، وأدوات محمية، وعتبات تنبيه قابلة للتخصيص. توفر لوحة TUI (الأمر /dcp) وأمر الشرطة المائلة (/dcp-compress) تحكمًا يدويًا. تتوفر تجاوزات للتعليمات البرمجية (prompt overrides) للتخصيص المتقدم. يلاحظ DCP أن الضغط يبطل بادئات ذاكرة التخزين المؤقت (cache prefixes)، مع اختبارات تظهر معدل إصابة بالذاكرة المؤقتة حوالي 85% مقابل 90% بدون ضغط، لكن توفير الرموز عادةً يفوق تكاليف فقدان الذاكرة المؤقتة. المشروع في وضع الصيانة مع انتقال الميزات الجديدة إلى Sleev، وهو وكيل محلي لأدوات برمجة ذكاء اصطناعي متعددة. مرخص بموجب AGPL-3.0-or-later.