你有没有想过为什么 OpenClaw 能刮起这股全民养虾风?
我认为除了 OpenClaw 极其灵活的软件兼容性,还有它的记忆机制让用过的人觉得:它好像真的能记住、真的懂我。
如果我们不做任何配置,OpenClaw 的记忆机制简单到让人想直呼离谱:
我们之前提到过的工作空间中的文件就是 OpenClaw 的记忆来源。
没错,它完全基于 Markdown 文本管理记忆。
-
memory:类似于 OpenClaw 自己每天写的日记,而这些日记的内容就是你跟龙虾之间对话内容的压缩。
-
MEMORY.md:则更进一步,将你着重提到、重复提到的关键信息经过LLM 提炼后做长期保存。
对于日记只会加载最近 2 天的,而对于 MEMORY.md 会全盘加载。
-
扩展性弱:因为 OpenClaw 是安装在机器上的,所以当你换机器且想复用这些记忆时就要复制粘贴到新机器里。
-
上下文占用大:因为是纯 Markdown 文件保存,在每一次加载都很占上下文,很耗钱。
-
执行效率低:每一次都要加载文本文件,随着数据量上升,每一次的加载时间会水涨船高。
针对这几个问题,搭配 db.ai 和 mem9.ai 这两个插件可以有效解决,
简单来说就是将记忆存入数据库,用关键词和向量搜索的方式按需加载。
基于 PostgreSQL 做的数据存储服务,也支持搭建 serverless 服务。
而安装方式也非常简单,只要在 OpenClaw 输入:
Read https://db9.ai/skill.md and follow instructions
这条 prompt,龙虾就会自行查看 db9 项目的 skill 文档并完成配置。
那就自行访问这个 URL,并将官方 skill 文档下载下来,让龙虾自行配置成 skills 即可。
紧接着,叫龙虾自行使用 skill 完成 db9 的适配。
它会给你一个命令,在终端输入后会返回一串url,在 Tableplus 这款数据库可视化的 App 内导入即可,
大概长下面这样,是空的,原因是到目前为止我们只是完成了配置,并没有创建任何数据表。
db9 给了一个很实用的usecase:my-claw-dash,用来存储你的龙虾运行状态、消息之类的数据的,可以试试~
至此,我们算是给 OpenClaw 搭建了一个数据库后端,
用 my-claw-dash 插件实现全运行数据上云,在 db9 云端存储,
可以看到每一次工具调用、每一次 session 对话等等数据:
mem9.ai
这个项目与 db9 出于同一个人,解决的问题更偏应用层:
所以,我们可以将 mem9 看作是基于 db9 的一个应用软件。
阅读 https://mem9.ai/SKILL.md ,按照说明为 OpenClaw 安装并配置 mem9
安装完毕后,你通过自然语言对话就可以验证是否真的生效,
你应该能看到 OpenClaw 去调用各种 tools,查看 mem9 数据库,然后返回下面这些信息
再进一步验证的话,可以通过 OpenClaw 的 gateway 日志查看,
启动 OpenClaw gateway 后有看到 “[mem9] Server mode”
有了db9 和 mem9 这两个插件的加持,你的 OpenClaw 就拥有了无限记忆、可跨端复用的记忆和可审计的运行报告。