ranxianglei/billion-context
장문 코딩 세션을 수개월 지속하는 컨텍스트 압축 플러그인
원제 ranxianglei/billion-context
스타 3,027당일 +176TypeScript
Key Point
각 토큰당 과금하는 API 환경에서 컨텍스트 윈도우를 초과하면 세션이 저하되거나 끝나는데, 이 도구로 며칠~수개월 단위 장문 세션을 하나의 윈도우로 계속 실행할 수 있다.
핵심 요약
- billion-context는 TypeScript 기반 컨텍스트 압축 플러그인으로, 100K 크기의 작은 컨텍스트 윈도우에서 5배 적은 토큰으로 수개월 단위의 장문 세션(수십억 토큰)을 운영할 수 있게 한다.
- 모든 AI 코딩 에이전트 클라이언트와 모델 API 사이에 위치하면서 acp-kernel 압축으로 스트림을 재작성해 모델이 직접 언제 무엇을 압축할지 결정한다.
- 컨텍스트 관리 도구 4가지를 주입한다: compress(메시지 범위를 상세 요약으로 압축), decompress(필요 시 복원), search_context(압축된 요약과 가시 메시지 검색), acp_status(컨텍스트 사용량 및 압축 가능 범위 조회).
- 기존 호스트의 요약기와 달리 압축이 증분적이고 가역적이며 프리픽스 캐시 친화적이어서 요약은 작은 범위로 작성되고 필요시 복원되며 캐시 프리픽스는 유지된다.
- 설치는 npm으로 일반 사용자 권한으로 수행하고(sudo 불필요), 네이티브 플러그인 모드·런처 모드·URL 변경 모드 세 가지 방식으로 각 클라이언트와 연동한다.
- pi, opencode, omp, dsh, kimi, hermes, zcode, claude 등 주요 코딩 에이전트들이 네이티브 플러그인으로 지원되며, 각 클라이언트는 플러그인이나 런처 또는 /bili/ 경로 접두사로 프록시에 연결한다.
- 건강한 세션은 95~97%의 프리픽스 캐시 히트율을 유지하며 압축 자체의 비용은 2% 이하다.
- 히트율이 낮으면 /acp-cache 명령으로 캐시 속성을 확인할 수 있고, 상향 캐시 TTL 만료·모델 전환·버그·기타 요인 순으로 원인을 특정한다.
- 웹 UI 대시보드(localhost:8787)에서 세션과 캐시 통계를 조회할 수 있으며, 모델 전환과 API 키 전환도 추적해 프리픽스 캐시 무효화를 귀속한다.
- 4.5개월 174,327회 모델 호출·18.76B 누적 입력 토큰에 걸친 프로덕션 스케일 종단 연구에서 204,800 토큰 윈도우 모델들에 윈도우 위반이 0건이었고 8,584~12,049회 호출의 마라톤 세션을 기록했다.
저장소 보기 ↗github.com