Compaction UI Enhancements

🗜️ AI 会话智能压缩与可视化控件

为OpenClaw添加手动上下文压缩功能,带实时用量可视化与LLM智能摘要,优化长会话性能

收藏
5k
安装
1.2k
版本
1.0.0
CLS 安全扫描中
预计需要 3 分钟...

使用说明

核心用法

compaction-ui 是一个面向 OpenClaw 控制面板的 UI 增强技能,为 AI 会话管理引入手动上下文压缩机制。核心交互是一个环形进度指示器(Context Gauge),实时显示当前会话的 token 占用率(已用/可用),并通过颜色编码(绿/黄/红)提示压缩时机。用户点击按钮后触发 LLM 驱动的智能压缩流程,将冗长对话历史摘要为紧凑的上下文表示。

主要功能模块

1. 上下文用量仪表盘:基于 SVG 的环形进度条,整合在聊天工具栏,支持 20% 以下禁用、85% 以上红色告警等智能状态管理
2. LLM 压缩引擎:替换原有的行截断逻辑,调用 compactEmbeddedPiSession() 进行语义级摘要,耗时 10-30 秒

3. 模态进度反馈:五阶段动画(准备→读取→摘要→压缩→完成),带 token 前后对比报告

4. 历史过滤器:自动隐藏 NO_REPLY/HEARTBEAT_OK 系统消息,在压缩点插入可视化分隔线

5. JSONL 标记支持:压缩事件写入会话日志,便于后续审计与调试

显著优点

  • 精准用量感知:实时 token 可视化解决 LLM 应用的"黑盒"上下文问题,用户可主动管理而非被动触发截断
  • 语义级压缩:相比传统滑动窗口截断,LLM 摘要保留关键信息密度,显著降低信息损失
  • 渐进式交互:五阶段动画缓解 10-30 秒等待焦虑,完成后的 2 秒停留+自动刷新确保确认感
  • 系统消息降噪NO_REPLY/HEARTBEAT_OK 过滤清理界面,提升长会话可读性
  • 架构侵入性低:纯前端补丁+RPC 扩展,不修改核心 agent 循环逻辑

潜在缺点与局限性

  • 压缩期间阻塞Abort any active agent run 的设计意味着压缩时会中断正在进行的推理,不适合实时协作场景
  • LLM 成本与延迟:每次压缩消耗额外 token 且耗时显著,高频压缩可能抵消节省的上下文成本
  • 单点依赖:压缩质量完全取决于配置模型的摘要能力,无降级到截断模式的兜底机制
  • 浏览器兼容性backdrop-filter: blur(3px) 在旧版浏览器(如 IE11)无优雅降级说明
  • 手动触发局限:无自动压缩阈值触发,高负载场景需用户主动关注仪表盘

适合人群

  • 长会话重度用户:客服、编程辅助、深度研究等单会话超 50 轮交互场景
  • 多会话管理需求:OpenClaw 网关管理员需监控多个会话的 token 健康度
  • 自托管 OpenClaw 实例:有源码访问权限可应用补丁的技术团队
  • 对上下文质量敏感者:愿意用压缩延迟换取信息保留优先于简单截断

常规风险

| 风险类型 | 具体描述 | 缓解建议 |
|---------|---------|---------|
| 压缩中断风险 | 网络波动或 LLM 故障导致压缩失败,可能残留不一致状态 | 依赖会话存储的 `compactionCount` 计数器追踪,建议增加幂等重试机制 |
| token 计数漂移 | `totalTokens`/`contextTokens` 来自会话存储,与真实 LLM 编码可能存在偏差 | 预留 5-10% 安全缓冲,避免 100% 临界触发 |
| 隐私摘要泄露 | 敏感对话经 LLM 二次处理,可能违反数据驻留政策 | 配置本地/私有模型执行压缩,避免第三方 API |
| UI 竞态条件 | 压缩完成 2 秒后刷新,若用户在此期间发送消息可能导致状态错乱 | 添加输入禁用遮罩或强制刷新前锁定交互 |

本技能为 OpenClaw 生态提供了生产级的上下文管理 UI 范式,但需运维方评估 LLM 成本与可用性约束后启用。

Compaction UI Enhancements 内容

references文件夹
手动下载zip · 7.1 kB
chat-filters.diff.mdtext/markdown
请选择文件