À propos du projet
Dynamic Context Pruning (DCP) est un plugin pour OpenCode qui réduit automatiquement l'utilisation des jetons en gérant le contexte de conversation. Il propose trois stratégies principales : Compress remplace le contenu de conversation obsolète par des résumés techniques de haute fidélité, en utilisant soit le mode plage (compression de segments contigus), soit le mode message expérimental (compression de messages individuels). La déduplication identifie les appels d'outils répétés avec des arguments identiques et ne conserve que la sortie la plus récente. Purge Errors supprime les entrées des appels d'outils en erreur après un nombre configurable de tours, tout en préservant les messages d'erreur.
Le plugin fonctionne sans modifier l'historique de session — il remplace le contenu élagué par des espaces réservés avant d'envoyer les requêtes au LLM. La configuration est gérée via un fichier JSONC avec des remplacements au niveau du projet, prenant en charge les limites de contexte par modèle, les motifs de fichiers protégés, les outils protégés et des seuils de rappel personnalisables. Un panneau TUI (/dcp) et une commande slash (/dcp-compress) offrent un contrôle manuel. Des remplacements de prompts sont disponibles pour une personnalisation avancée.
DCP note que l'élagage invalide les préfixes de cache de prompt, avec des tests montrant un taux de succès de cache d'environ 85 % contre environ 90 % sans, mais les économies de jetons compensent généralement les coûts d'échec de cache. Le projet est en mode maintenance, les nouvelles fonctionnalités étant transférées vers Sleev, un proxy local pour plusieurs outils de codage IA. Sous licence AGPL-3.0-or-later.
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.