SuperAPI AI 工具集

session-persistence

智能体与模型

查看项目

更新于 10-15 19:57

技能介绍

用途:OpenClaw 的会话数据以 JSONL 文件保存,难以搜索且容易丢失。Session Persistence 把每条消息导入本地 SQLite 数据库并建立全文索引,使全部会话、频道与时间范围内的历史都可查询。

主要能力:增量导入新消息;FTS5 全文搜索(不可用时回退 LIKE);按角色过滤搜索;查看最近消息、导出完整会话、统计数据库信息、导出回 JSONL、查看上次导入摘要;支持 JSON 机器可读输出。数据库位于 ~/.openclaw/lcm-db/messages.db,含 conversations、messages、messages_fts、import_log 表。状态存于 ~/.openclaw/skill-state/session-persistence/state.yaml。

使用方式:通过 cron 每 15 分钟自动增量导入;也可手动执行命令,如 python3 persist.py --import、--import --source <dir>、--search "auth migration"、--search "deploy" --role user、--recent --hours 24、--conversation <id>、--stats、--export --format jsonl、--status、--format json。

适用场景:搜索过往对话、崩溃或会话切换后校验消息是否持久化、消息计数与活动时间线分析,以及为 memory-dag-compactor、dag-recall、context-assembly-scorer 等技能提供数据。

限制:仅使用 Python 内置 sqlite3,无外部依赖;导入幂等,按会话序列号跳过已导入消息;受 cron 间隔影响,最多滞后实时约 15 分钟;数据库仅存本地,不会提交到仓库。其他细节暂未提供。