Skip to content
文档首页

上下文压缩 ​

长任务接近模型上下文上限时,Mogick 会把较早的对话整理成摘要,并保留近期原文继续工作。完整会话历史仍保存在本地;压缩改变的是后续发送给模型的输入视图。

什么时候用 ​

自动压缩始终开启,并在运行准备阶段发现上下文超过模型窗口约 70% 时触发。你也可以在以下情况手动执行:

  • 侧栏 Session window 接近上限。
  • 对话很长,准备开始一个新的任务阶段。
  • 模型开始反复引用过时细节,希望重新收敛上下文。
text
/compact

手动压缩必须是当前消息的唯一内容,并且只能在会话空闲时执行。模型生成、工具调用或另一次压缩进行中时不会启动。

你会看到什么 ​

压缩期间需要等待一次摘要生成。成功后:

  • TUI 侧栏在摘要生成完成后刷新 Session window。
  • ACP 宿主收到新的 usage_update。
  • 下一次请求使用“压缩摘要 + 最近原文”。
  • 原始会话历史没有被删除。

压缩失败会明确结束当前操作,不会静默截断历史。

工作原理 ​

每次模型请求前,Mogick 依次组装:

层次内容
系统与运行信息系统提示、工具、权限、计划、记忆、MCP 和项目指令
压缩摘要已被覆盖的较早历史及继续任务所需的 handoff
最近原文摘要之后保留的用户、助手和工具消息
当前输入本轮用户消息与附件

再次接近窗口上限时,Mogick 会基于已有摘要和新增历史继续压缩,而不是每次重新处理全部原始对话。这使长会话能够跨多次压缩继续运行。

摘要优先保留任务目标、已作决策、文件变化、未完成事项、重要约束和关键错误;重复回显与已经完成的中间细节可能被省略。因此,对精确原文有要求时应查看会话历史或重新引用文件,不要只依赖压缩摘要。

与其他能力的区别 ​

能力影响范围是否删除原始历史
上下文压缩后续模型输入否
Checkpoint / /rewind工作区和/或会话历史状态可能回退
L3 记忆跨会话检索与沉淀否
/new新建独立会话否

输入边界 ​

单轮用户输入文本和附件字符串上限为 1 MiB。这个限制与上下文压缩不同:超大的单条输入应拆分任务、缩小引用范围或让 Agent 按需读取文件,不能依靠 /compact 绕过。

如果模型没有提供上下文窗口上限,侧栏仍会显示已使用 token,但可能无法计算百分比。

相关文档 ​