用途:管理 Agently 的会话级对话状态,实现跨轮次对话连续性、按 session_id 隔离历史,以及服务重启后恢复对话。
主要能力:activate_session() 与 deactivate_session() 控制会话开关;会话级 chat_history 与手动 set_chat_history(...)、add_chat_history(...) 的区别;按 session_id 隔离;从 context_window 自动注入请求前缀;在 finally 阶段自动记录用户与助手轮次;session.input_keys 与 session.reply_keys 控制保留字段;full_context、context_window、memo 三层状态;session.max_length、默认自动裁剪与自定义分析/裁剪处理器;clean_context_window();通过 JSON 或 YAML 导出与恢复会话状态。
使用方式:需要会话生命周期、session_id 选择或切换时参考 references/session-lifecycle.md;涉及 chat_history、自动记录、请求前缀注入或 input_keys/reply_keys 时参考 references/recording-and-overrides.md;涉及裁剪、max_length、自定义 resize 或 memo 更新时参考 references/resize-and-memo.md;导出、加载或恢复会话状态参考 references/serialization-and-restore.md;重启、重连或长时间挂起后恢复真实对话参考 references/business-restore-recipes.md;行为异常参考 references/troubleshooting.md。
适用场景:需要持久对话连续性、按用户或线程隔离历史、限制历史长度、存储长期压缩事实、保存并恢复会话,以及重启聊天服务后继续同一对话。若需同时恢复工作流进度与对话连续性,可结合 agently-triggerflow-config 与 agently-triggerflow-execution-state。
限制:不覆盖通用提示词槽位组合、模型设置/认证/代理/网络客户端配置、.output(...)/ensure_keys/流式响应/响应复用、TriggerFlow 运行时数据 memo 或工作流状态设计、完整 RAG 或知识库编排。会话序列化只恢复会话状态,不恢复整个应用运行时;Agent 设置、模型配置、工具与 TriggerFlow 执行状态仍需单独重建或恢复。前置条件为 Agently >= 4.0.8.5。