Session Memory (Workspace)

📅 会话归档与历史检索,让每次对话都可追溯

将会话历史归档为结构化记忆,支持按日期检索与关键词搜索,实现长期对话记忆的持久化与可引用。

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

使用说明

核心用法

session-memory 是 OpenClaw 生态中的会话归档与检索工具,解决 AI 助手跨会话"失忆"的痛点。它提供两条核心工作流:

1. session-to-memory:将指定日期的完整会话转录(JSONL)自动摘要并写入 memory/YYYY-MM-DD.md,使历史对话可被标准的记忆检索(RAG/引用)捕获。支持 --date 指定日期、--append 追加模式、--max-messages 截断长会话等参数。

2. session-search:在原始会话日志中执行关键词全文检索,返回包含会话ID、时间戳、角色的结构化片段(JSON)。支持日期范围过滤(--since/--until)和结果数量限制,用于快速定位历史讨论内容而不污染记忆文件。

此外提供 shell 片段用于发现哪些日期存在会话记录。

显著优点

  • 零侵入集成:作为 Node.js 脚本运行,不修改核心代理架构,通过标准 memory/ 目录与现有 RAG 管道对接
  • 精准追溯:保留原始会话的完整元数据(sessionId、timestamp、role),支持细粒度引用
  • 灵活控制:支持追加/覆盖模式、消息数量截断、自定义路径,适应不同存储策略
  • 双语友好:中文指令描述,降低中文用户配置成本

潜在缺点与局限性

  • 外部依赖:强制要求 Node.js 运行时,纯 Python 环境需额外安装
  • 无内置加密:会话日志与记忆文件以明文 JSONL/Markdown 存储,敏感对话需自行加密文件系统
  • 摘要质量不可控:依赖简单的消息截断(--max-messages)而非语义摘要,长会话可能丢失关键上下文
  • 单代理设计:默认路径硬编码 agents/main/sessions,多代理并行场景需手动指定 --sessions-dir

适合人群

  • 需要长期维护项目上下文的开发者(如跨周/月的代码审查追踪)
  • 将 OpenClaw 作为个人知识管理工具的重度用户
  • 需要审计合规、保留完整对话可追溯性的团队

常规风险

  • 数据残留:即使删除记忆文件,原始 sessions/*.jsonl 仍保留完整对话,需配套日志清理策略
  • 路径遍历:若用户可控的 --workspace--sessions-dir 未做校验,可能读取系统任意路径(需依赖调用方沙箱)
  • 并发写入:同一日期的多会话同时归档可能触发竞态条件(建议按日期串行执行)

Session Memory (Workspace) 内容

scripts文件夹
手动下载zip · 8.5 kB
session-search.jstext/javascript
请选择文件