关于 export
Mem0 Export 是用于将当前项目的全部记忆导出为 Markdown 文件的 Agent 技能。它会分页获取记忆,并以包含 YAML 元数据的区块格式保存。
主要功能
- 01获取当前项目的全部记忆
- 02处理分页结果
- 03生成含 YAML 元数据的 Markdown 文件
- 04输出导出数量摘要
适用场景
- 01备份项目记忆
- 02将记忆保存为便携文件
安装
复制下面的命令,在终端中运行。
$
npx skills add https:/ / github.com/ mem0ai/ mem0 --skill export安装后在 Claude Code 中输入/export确认已加载。
详细介绍
Mem0 导出
将当前项目的所有记忆导出到一个便于移植的 Markdown 文件。
执行
步骤 1:解析身份
确定当前身份:
- 从
MEM0_USER_ID环境变量获取user_id,否则使用$USER,再否则使用"default" - 从
MEM0_PROJECT_ID环境变量获取project_id(用作app_id),或通过项目解析器获取
步骤 2:获取所有记忆
调用 get_memories,并传入:
filters={"AND": [{"user_id": "<active_user_id>"}, {"app_id": "<active_project_id>"}]}page_size=200
如果响应已分页(即结果包含 next 游标,或数量等于 page_size),则继续获取后续页面,直到检索到所有记忆。
步骤 3:将每条记忆格式化为 YAML front matter 块
对每条记忆记录,按以下确切格式生成一个块:
---
id: <memory.id>
created_at: <memory.created_at>
type: <memory.metadata.type or "">
confidence: <memory.metadata.confidence or "">
branch: <memory.metadata.branch or "">
files: <memory.metadata.files joined with ", " or "">
categories: <memory.categories joined with ", " or "">
---
<memory.memory or memory content string>
注意:
---分隔符必须独占一行,且前后不能有额外空格。files和categories以逗号分隔的值写在同一行。- 内容后、下一个
---前留一个空行(便于阅读)。 - 如果字段缺失或为 null,则写为空字符串(而不是 "null")。
步骤 4:写入导出文件
确定输出文件名:
mem0-export-<project_id>-<YYYY-MM-DD>.md
其中 <YYYY-MM-DD> 是今天的 UTC 日期。
使用 Write 工具(或等效工具)将所有格式化后的块写入此文件。文件将写入当前工作目录。
步骤 5:打印摘要
Exported <N> memories to <filename>
其中 <N> 是写入的记忆块总数。
错误处理
- 如果
get_memories返回错误或没有记忆,则打印:No memories found for project <project_id>. Nothing exported. - 如果写入失败,则向用户报告错误。
评论
支持 Markdown