mema

🧠 Agent 双引擎记忆中枢

OpenClaw官方Agent记忆中枢,基于SQLite持久化存储与Redis短期缓存,实现跨会话知识索引与状态管理。

收藏
3k
安装
658
版本
v1.1.1
CLS 安全性认证2026-05-16
点击查看完整报告 >

使用说明

核心用法

mema 是 Agent 的中央记忆系统,提供双层记忆架构:长期记忆层使用 SQLite 数据库存储文档索引(路径、标题、标签)和技能使用记录,数据持久化于 ~/.openclaw/memory/main.sqlite;短期记忆层通过 Redis 缓存临时上下文,以 mema:mental:: 为命名空间前缀,默认 6 小时 TTL 与 Agent 会话周期对齐。

主要操作包括:

  • mema.py init:初始化数据库表结构
  • mema.py index <file> --tag <tag>>:将知识文档编入长期索引
  • mema.py list --tag <tag>>:按标签检索相关文档
  • mema.py mental set/get <key>>:读写短期会话状态

显著优点

1. 架构清晰:双存储引擎各司其职,SQLite 保证持久可靠,Redis 提供高性能临时缓存
2. 零外部依赖风险:纯本地文件操作,无网络 API 调用,数据完全自主可控

3. 安全实现:全参数化 SQL 查询杜绝注入,路径处理使用 os.path.expanduser 避免遍历攻击

4. 生态整合:深度嵌入 OpenClaw Agent 核心,与官方技能体系无缝协作

潜在缺点与局限性

  • Redis 依赖:需独立部署 Redis 服务,增加运维复杂度
  • 无分布式能力:SQLite 单文件架构限制高并发写入场景
  • 功能边界明确:仅做索引与键值存储,不支持向量检索或语义搜索
  • 配置简陋:缺少日志审计、数据库加密等企业级特性

适合的目标群体

  • 个人开发者构建长期运行的 Agent 助手
  • 需要跨会话记忆保持的自动化工作流
  • OpenClaw 生态用户寻求官方推荐的原生存储方案
  • 对数据本地化有强要求的隐私敏感场景

使用风险

  • Redis 暴露风险:若 Redis 未设密码且监听公网,可能导致未授权数据访问
  • 目录权限:需确保 ~/.openclaw/memory// 权限为 700,防止其他用户读取索引内容
  • 数据备份:SQLite 单文件虽便于备份,但误删或损坏将导致记忆丢失,建议定期备份

安全解读

核心用法

mema 是面向AI Agent的双层记忆架构系统,将人类的"长期记忆"与"短期工作记忆"编码为可操作的数字基础设施:

  • 长期记忆层(SQLite)~/.openclaw/memory/main.sqlite 持久存储知识文档索引与技能使用记录,支持按标签检索,数据随Agent状态备份
  • 短期记忆层(Redis)mema:mental:* 命名空间提供6小时TTL的上下文缓存,用于会话间状态传递、思维暂存与任务断点续传

关键操作

  • mema.py index <path> --tag <tag> —— 将新文档编入知识图谱
  • mema.py list --tag <tag> —— 语义化检索相关记忆
  • mema.py mental set/get <key> —— 读写会话上下文,实现"刚才聊到哪了"的连续性

---

显著优点

1. 架构优雅:分离持久存储与瞬时状态,符合认知科学的工作记忆模型
2. 零外部依赖:SQLite原生内嵌,Redis仅本地连接,无外泄风险

3. 极简接口:159行Python实现完整功能,学习成本极低

4. Agent原生设计:深度集成OpenClaw生态,.env配置即开即用

---

潜在局限

  • 单点故障:未实现SQLite的异地备份或Redis集群化
  • 无分布式锁:多Agent并发操作可能引发竞态条件
  • 查询能力有限:依赖标签匹配而非向量语义检索,大规模知识库时召回率受限
  • TTL固定:6小时短存期限可能截断超长周期任务

---

适合人群

  • 个人AI开发者:需要为Agent构建可进化记忆系统的独立开发者
  • 长期任务Agent:客服、研究助手等需跨会话保持上下文的场景
  • 隐私敏感用户:数据完全本地存储,拒绝云服务商的数据托管

---

常规风险

| 风险项 | 现状 | 缓解建议 |
|--------|------|---------|
| 路径遍历 | 基础防护存在 | 建议显式校验`..`与绝对路径 |
| Redis未认证 | 默认无密码 | 生产环境配置`REDIS_PASSWORD` |
| 日志缺失 | 仅stderr输出 | 建议接入结构化日志系统 |
| 来源可信度 | T3个人开发者 | 代码已开源审计,建议定期复扫 |

整体而言,mema以极小的代码 footprint 实现了记忆系统的核心抽象,是Agent基础设施中"恰如其分"的设计典范。

mema 内容

assets文件夹
references文件夹
scripts文件夹
手动下载zip · 4.2 kB
schema.sqltext/plain
请选择文件