Martian-Engineering/lossless-claw

Lossless Claw — LCM (Lossless Context Management) plugin for OpenClaw

lossless-claw – OpenClaw 的无损上下文管理

这是什么

  • 这是一个 OpenClaw AI 代理平台的插件,它以“无损上下文管理”(LCM) 系统取代了默认的滑动窗口上下文截断机制。
  • 它将每条消息存储在 SQLite 数据库中,并构建分层摘要的 DAG,因此即使超过 Token 窗口,模型也不会丢失信息。

核心概念

  1. 持久化 – 所有原始消息都会写入 lcm.db (SQLite) 且永不删除。
  2. 摘要 – 较旧的块由配置的 LLM 进行摘要;摘要随后被浓缩成更高级别的节点,形成一个有向无环图 (DAG)。
  3. 上下文组装 – 对于每一轮对话,插件会提取最近的原始消息加上适当的摘要节点,以保持在模型的 Token 限制内。
  4. 回溯工具 – 诸如 lcm_grep、lcm_describe 和 lcm_expand 等指令让代理可以搜索压缩后的历史记录并深入查看原始消息。

如何互动

  • CLI (lcm) – 一个 shell 风格的界面,用于读取数据库(只读),让您可以检查状态、列出会话、追踪消息、查看摘要以及调整少数配置值 (freshTailCount)。
  • OpenClaw 斜线指令 – 聊天室指令如 /lossless、/lossless backup、/lossless doctor 和 /lossless status 可用于诊断、创建备份、健康检查及维护操作。
  • 程序化合约 – 为支持上下文引擎控制的 OpenClaw 网关提供最小化的主机端 API (status, doctor)。
  • 迁移工具 – lossless-claw-migrate-sessions 将现有的 OpenClaw JSONL 会话文件导入 LCM 数据库(先进行 dry-run,可选 --apply)。

安装与设置

# 建议 – 使用 OpenClaw 的插件安装程序
openclaw plugins install @martian-engineering/lossless-claw@latest
  • 需要 OpenClaw ≥ 2026.9.2 并支持 plugin-context-engine。
  • 需要 Node 22+。
  • 必须在 OpenClaw 中配置 LLM 提供者;插件会调用该提供者来生成摘要。

配置

  • 在 OpenClaw JSON 配置文件中的 plugins.entries 下新增一个 lossless-claw 条目(请参阅 README 以获取完整示例)。重要的参数包括:
    • freshTailCount – 有多少最近的消息受到保护,不会被摘要。
    • leafChunkTokens – 触发叶节点摘要的 Token 限制。
    • summaryModel / expansionModel – 用于摘要和展开摘要的模型。
    • 各种阈值 (LCM_CONTEXT_THRESHOLD, LCM_PROACTIVE_THRESHOLD_COMPACTION_MODE 等),用于控制压缩何时执行以及是内联执行还是延迟执行。
  • 环境变量(以 LCM_ 为前缀)提供了设置相同选项的替代方式。

维护工作流程

  • 当对话超过 Token 窗口时,插件会记录“压缩债务”(compaction debt)。
  • /lossless doctor maintenance 列出债务;/lossless doctor apply … 在备份后尝试修复损坏的摘要或关闭不活跃的债务。
  • 在任何可能更改数据库的写入操作之前,系统会自动创建备份。

为什么这很重要

  • 传统代理会丢失较旧的对话轮次,这可能会中断长时间运行或调查性的对话。
  • lossless-claw 保持完整的对话历史可搜索,同时符合模型限制,实现“永不遗忘”的代理。
  • DAG 摘要方法轻量(SQLite + LLM 调用),并与 OpenClaw 的插件架构完美整合。

了解更多

  • 动画可视化:https://losslesscontext.ai
  • CLI 文档:docs/cli.md
  • 上下文探索 UI:OpenClaw 中的 Settings → Labs → Custom plugin UI。

以上所有细节均直接取自仓库的 README。

相关

  • 项目
  • 项目
  • 项目
  • 项目
  • 项目