프로젝트 소개

Dynamic Context Pruning (DCP)은 OpenCode용 플러그인으로, 대화 컨텍스트를 지능적으로 관리하여 토큰 사용량을 최적화합니다. LLM에 요청을 보내기 전에 닫혔거나 오래된 대화 내용을 고충실도 기술 요약으로 교체하는 방식으로 작동하며, 원래 세션 기록은 수정되지 않도록 보장합니다. 핵심 기능은 다음과 같습니다: - 압축: 오래된 내용을 요약으로 교체하는 도구로, 모델에 노출됩니다. 연속 범위를 위한 "range" 모드와 개별 메시지를 위한 실험적 "message" 모드를 지원합니다. 겹치는 요약은 정보를 보존하기 위해 중첩되며, 보호된 도구 출력이나 파일 패턴은 유지됩니다. - 중복 제거: 동일한 인수로 반복된 도구 호출을 식별하여 가장 최근 출력만 유지합니다. - 오류 제거: 설정된 횟수의 턴 이후 오류가 발생한 도구 호출에서 큰 입력을 제거하되 오류 메시지는 보존합니다. DCP는 전역 또는 프로젝트별 JSON 파일을 통해 고도로 구성 가능합니다. 사용자는 압축 모드, 컨텍스트 제한 및 보호된 도구를 조정할 수 있습니다. 수동 제어 및 통계를 위한 TUI 패널과 슬래시 명령어(/dcp, /dcp-compress)를 제공합니다. 또한 내부 지침에 대한 사용자 정의 프롬프트 재정의를 지원하여, 사용자가 특정 요구에 맞게 압축 동작을 조정할 수 있습니다.