इस प्रोजेक्ट के बारे में

डायनामिक कॉन्टेक्स्ट प्रूनिंग (DCP) OpenCode के लिए एक प्लगइन है जो बातचीत संदर्भ को प्रबंधित करके स्वचालित रूप से टोकन उपयोग को कम करता है। यह तीन मुख्य रणनीतियाँ प्रदान करता है: कंप्रेस पुरानी बातचीत सामग्री को उच्च-निष्ठा तकनीकी सारांश के साथ बदलता है, या तो रेंज मोड (सन्निहित स्पैन को संपीड़ित करना) या प्रयोगात्मक संदेश मोड (व्यक्तिगत संदेशों को संपीड़ित करना) का उपयोग करके। डीडुप्लीकेशन समान तर्कों के साथ दोहराए गए टूल कॉल की पहचान करता है और केवल सबसे हालिया आउटपुट रखता है। पर्ज एरर्स कॉन्फ़िगर करने योग्य संख्या में टर्न के बाद त्रुटि वाले टूल कॉल से इनपुट हटाता है जबकि त्रुटि संदेशों को संरक्षित करता है। प्लगइन सत्र इतिहास को संशोधित किए बिना संचालित होता है — यह LLM को अनुरोध भेजने से पहले प्रून की गई सामग्री को प्लेसहोल्डर से बदल देता है। कॉन्फ़िगरेशन प्रोजेक्ट-स्तरीय ओवरराइड के साथ JSONC फ़ाइल के माध्यम से किया जाता है, जो प्रति-मॉडल संदर्भ सीमाएँ, संरक्षित फ़ाइल पैटर्न, संरक्षित टूल और अनुकूलन योग्य नज थ्रेशोल्ड का समर्थन करता है। एक TUI पैनल (/dcp) और स्लैश कमांड (/dcp-compress) मैन्युअल नियंत्रण प्रदान करते हैं। उन्नत अनुकूलन के लिए प्रॉम्प्ट ओवरराइड उपलब्ध हैं। DCP नोट करता है कि प्रूनिंग प्रॉम्प्ट कैश प्रीफिक्स को अमान्य कर देती है, परीक्षण में बिना प्रूनिंग के ~90% की तुलना में ~85% कैश हिट दर दिखाई देती है, लेकिन टोकन बचत आमतौर पर कैश मिस लागत से अधिक होती है। परियोजना रखरखाव मोड में है और नई सुविधाएँ Sleev में स्थानांतरित हो रही हैं, जो कई AI कोडिंग टूल के लिए एक स्थानीय प्रॉक्सी है। AGPL-3.0-or-later के तहत लाइसेंस प्राप्त है।