프로젝트 소개

Lossless Claw는 Voltropy의 LCM 논문을 기반으로 한 Lossless Context Management(LCM)를 구현하는 OpenClaw용 플러그인입니다. OpenClaw의 기본 슬라이딩 윈도우 압축을 DAG 기반 요약 시스템으로 대체하여 모든 메시지를 보존하면서 활성 컨텍스트를 모델 토큰 한도 내로 유지합니다. 작동 방식: 대화가 모델의 컨텍스트 창을 초과하면 LCM은 모든 메시지를 대화별로 구성된 SQLite 데이터베이스에 저장하고, 구성된 LLM을 사용하여 오래된 메시지 청크를 요약하며, 요약을 상위 수준 노드로 압축하여 방향성 비순환 그래프를 형성하고, 매 턴 요약과 최근 원시 메시지로 컨텍스트를 조립하며, 에이전트가 압축된 기록에서 세부 정보를 검색하고 회상할 수 있도록 도구(lcm_grep, lcm_describe, lcm_expand)를 노출합니다. 원시 메시지는 데이터베이스에 남아 있으며 요약은 소스 메시지에 다시 연결됩니다. 설치는 OpenClaw의 플러그인 설치 프로그램을 사용합니다(예: `openclaw plugins install @martian-engineering/lossless-claw@latest`). 사전 요구 사항에는 플러그인 컨텍스트 엔진 지원이 있는 OpenClaw, Node.js 22 이상, 요약을 위해 OpenClaw에 구성된 LLM 공급자가 포함됩니다. README는 네이티브 플러그인 세션 패널을 위해 OpenClaw 2026.9.2 이상과의 호환성을 언급하며, Context 탐색기는 Settings → Labs → Custom plugin UI가 필요합니다. 구성은 플러그인 구성 및 환경 변수를 통해 가능하며 환경 변수가 우선합니다. 주요 설정에는 freshTailCount(압축에서 보호되는 최근 메시지), leafChunkTokens(리프 압축 청크당 소스 토큰), contextThreshold(압축을 트리거하는 컨텍스트 창 비율), incrementalMaxDepth, summaryModel 및 expansionModel 재정의, 세션 제외 패턴이 포함됩니다. 권장 시작 구성이 제공됩니다. 패키지에는 lcm.db의 읽기 전용 검사를 위한 에이전트 지향 `lcm` 셸 CLI와 검증된 구성 쓰기 명령 하나, 그리고 상태, 백업, 의사 진단, 유지 관리 작업을 위한 `/lossless` 및 `/lcm`과 같은 네이티브 OpenClaw 명령이 포함됩니다. 일회성 세션 마이그레이션 CLI(`lossless-claw-migrate-sessions`)는 기존 OpenClaw JSONL 세션 파일을 lcm.db에 백필하며 dry-run 및 apply 모드를 지원합니다. README는 `/new`(대화 행과 요약을 유지하고 컨텍스트 항목을 정리)와 `/reset`(활성 대화 행을 보관하고 새 행 생성)을 구분하는 세션 재설정 의미론, 하위 에이전트 신뢰 정책과 관련된 확장 모델 재정의 요구 사항, 그리고 컨텍스트 엔진 제어 디스패치를 지원하는 호스트를 위한 선택적 기능 게이트 프로그래밍 방식 제어 계약도 문서화합니다.