手动触发上下文压缩,对标 DeepAgents compact_conversation 工具。
在消息历史过长但尚未达到自动压缩阈值时,Agent 可主动调用此工具 立即执行压缩,释放上下文窗口空间。
执行流程
- 读取当前
Agent.State(通过agent_pid上下文字段) - 调用
CMDC.Agent.Compactor.force_compact/1 - 更新 Agent 状态
- 返回压缩统计信息
与 Agent 的交互
此工具需要在 context 中包含 agent_pid,由 Agent 在构建工具上下文时注入。
若无 agent_pid,工具仍可运行但不会实际修改 Agent 状态。
返回格式
Conversation compacted successfully.
- Messages before: 42
- Messages after: 8
- Messages removed: 34
- History saved to: /conversation_history/session-abc.md