EdgeClaw ClawXContext 深度解析:平滑压缩与动态重入如何驯服长会话
人工智能AI Agent大模型Agent 记忆LLM 网关【免费下载链接】EdgeClawEdgeClaw: Edge-Cloud Collaborative Personal AI Assistant based on OpenClaw项目地址https://gitcode.com/gh_mirrors/ed/EdgeClaw点击查看免费下载ClawXContext是 EdgeClaw基于 OpenClaw 的边缘-云协同个人 AI 助手内置的上下文引擎插件专注解决一个老问题AI 助手聊得越久会话上下文越沉重——大量工具输出、文件读取、搜索结果不断累积直到逼近模型上下文上限出现回答质量下降、反复重读文件、甚至直接报错。ClawXContext 用四级压力模型 分层压缩 压缩后动态重入这套组合拳让长会话既省 token又不断片。长会话为什么会失忆传统做法是上下文快满时一刀切压缩把历史总结成一段摘要。但简单粗暴的压缩有两个副作用失忆摘要丢了细节AI 转头又去重读一遍刚压缩掉的文件白白浪费 token断片压缩时机不好正好把正在做的任务相关上下文挤出去。ClawXContext 的思路是别等撑爆了才处理全程监控上下文压力按压力分级施策并专门评估每次压缩后的恢复质量。四级压力模型给会话装一个血压计插件核心是压力分级pressure stage每次轮次结束后都会重新评估逻辑在 pressure.ts压力阶段判定信号举例系统反应normal工具输出规模正常保持全量上下文仅做常规维护elevated出现陈旧重复读取、搜索/命令/网页输出堆积、预算占用 ≥85%开始剪枝折叠较早历史critical占用 ≥95%或出现单条超大未保护工具输出≥4000 字符双层折叠历史 更激进的裁剪stabilizing刚完成一次压缩后的观察期逐步回落评估恢复质量判定所依赖的债分析大工具输出债、重复读取债、搜索/命令/网页输出债等实现于 budget-manager.ts可对照官方 Auto-compaction 文档 理解 OpenClaw 原生压缩机制——ClawXContext 正是在此之上做了精细化。两道防线微压缩与自动压缩第一道逐条修剪maintain。每一轮之后maintain.ts 会做两件轻量事Snip 剪枝把保护区之外、超过长度阈值的旧工具输出替换为一行摘要桩。阈值随压力动态收紧——normal阶段 1200 字符起步critical降到 400rescue偏置下更是 220Microcompact 去陈旧如果一个文件在read之后又被edit/write改过旧读取内容就标记为[tool output outdated after ...]。这一步直接消灭拿着过期文件内容做决策的隐患。第二道整段压缩compact。当估算 token 超过预算 − autoCompactReserveTokens默认预留 13000这条硬阈值或处于critical且占用 ≥95% 时触发 compact.ts 的压缩流程委托运行时生成结构化摘要重建会话索引并进入stabilizing观察期。最近 6 轮对话protectedRecentTurns始终受保护不参与压缩。溢出恢复阶梯撑爆了也不怕万一还是触发了 overflow上下文溢出插件会按尝试次数自动升级策略compact.ts 中的 overflow recovery尝试次数模式指令倾向摘要上限第 1 次standard保留当前任务、阻塞点、最近文件480 字符第 2 次aggressive额外丢弃冗余工具载荷与旧探索分支360 字符第 3 次起rescue只留任务目标、被改文件、阻塞与下一步动作240 字符动态重入压缩不是终点而是恢复评估的起点这是 ClawXContext 最有特色的部分。压缩完不代表万事大吉——engine.ts 中的afterTurn会在压缩后的 1~2 轮内持续体检重复读取检测压缩后如果 AI 又去读最近文件里的老文件≥2 个说明压缩丢了对它真正重要的东西 → 压缩偏置升级为rescue快速重入检测压缩刚结束压力就弹回elevated/critical说明会话负载偏置过猛 → 偏置至少升到aggressive缓存失效检测压缩后 prompt cache miss也会计入偏置升级依据自然衰减如果一切正常偏置会沿rescue → aggressive → normal逐级回落。偏置compaction bias反过来又控制两个阀门重注入reinjection——压缩后在对话末尾前重新注入一块短程脚手架内容由 reinjection.ts 按模式组装压力阶段重注入模式内容normalsummaryrecent-filescritical-outputs摘要 最近 5 个文件 最近 5 条关键工具输出elevatedsummaryrecent-files摘要 最近 5 个文件criticalsummary-only只留摘要历史折叠collapsed history——elevated/critical阶段collapsed-history.ts 会把保护区之外的旧对话压成handoff交接层甚至archive handoff双层要点只保留每轮干了什么、动了哪些文件的骨架而非原始对话。也就是说压力越大注入越少恢复得越好注入越多——整个循环是自适应的这正是动态重入的含义。关键配置速查配置项定义在 openclaw.plugin.json参数默认值作用dataDir~/.openclaw/clawxcontext状态持久化目录protectedRecentTurns6最近 N 轮对话受保护不被压缩/剪枝snipEnabled/microcompactEnabledtrue开关两类轻量修剪autoCompactEnabledtrue开关自动压缩autoCompactReserveTokens13000压缩预留缓冲越早触发越平滑reinjectSummary/reinjectRecentFiles/reinjectCriticalToolOutputstrue/5/5重注入内容与数量上限如何检查自家会话的健康度插件自带两个诊断工具tools.ts可以直接在对话里让 AI 调用context_inspect查看当前会话的压力阶段、压缩偏置、债务分解、预算热点、折叠层、缓存健康度与溢出风险context_suggest给出针对性的优化建议例如建议先 snip还是建议直接 compact。当后台真的执行了压缩、剪枝陈旧读取等动作插件还会通过用户提示user notices见 user-notices.ts用你的语言告知一声不会无声无息地改动上下文。写在最后ClawXContext 把长会话治理拆成了四个互相咬合的机制压力分级何时动手、分层压缩动手多狠、溢出恢复阶梯撑爆后怎么救、动态重入救完再评估。代码主体集中在 extensions/openbmb-clawxcontext/src/如果你想深入建议按pressure.ts → maintain.ts → compact.ts → engine.ts的顺序阅读正好就是感知—轻量维护—重压缩—恢复评估的完整生命周期。赞分享人工智能AI Agent大模型Agent 记忆LLM 网关【免费下载链接】EdgeClawEdgeClaw: Edge-Cloud Collaborative Personal AI Assistant based on OpenClaw项目地址https://gitcode.com/gh_mirrors/ed/EdgeClaw点击查看免费下载相关推荐OpenClaw 如何理解并调整会话压缩 Compaction让长对话不超上下文OpenClaw 如何理解并调整会话压缩 Compaction让长对话不超上下文 每个模型都有上下文窗口context window即一次能处理的最大AI 应用AI Agent交互助手后端即时通讯网关Finagle 压缩机制深度解析HTTP 消息级压缩与 ThriftMux 会话级压缩实战指南Finagle 压缩机制深度解析HTTP 消息级压缩与 ThriftMux 会话级压缩实战指南 导读 Finagle 将压缩视为一种在 IO带宽与 CPU后端RPC框架Claude Code 会话压缩机制深度解析从 /compact 摘要模板到自动压缩配置Claude Code 会话压缩机制深度解析从 /compact 摘要模板到自动压缩配置 Claude Code 在长会话中会面临上下文窗口耗尽的问题其内置文档知识库创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考