mcpField
E
export

export

github.com/mem0aiAgent 工作流68.2k92 次安装1 天前更新
代码仓库

关于 export

Mem0 Export 是用于将当前项目的全部记忆导出为 Markdown 文件的 Agent 技能。它会分页获取记忆,并以包含 YAML 元数据的区块格式保存。

主要功能

  1. 01获取当前项目的全部记忆
  2. 02处理分页结果
  3. 03生成含 YAML 元数据的 Markdown 文件
  4. 04输出导出数量摘要

适用场景

  1. 01备份项目记忆
  2. 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