mcpField
P
pin

pin

github.com/mem0aiAgent 工作流68.0k93 次安装2 天前更新
代码仓库

关于 pin

用于将现有记忆标记为高优先级的 Mem0 技能,方法是在文本中添加固定标记,也可从新文本创建固定记忆。它还支持移除标记。

主要功能

  1. 01按 ID 或查询查找记忆
  2. 02将记忆标记为固定
  3. 03创建新的固定记忆
  4. 04移除固定标记

适用场景

  1. 01保护重要记忆,避免被清理
  2. 02固定决策以供日后参考
  3. 03不再需要时取消固定

MCP 相关

使用 Mem0 MCP 工具查找、读取、创建和更新记忆;固定操作会在记忆文本中添加标记。

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/mem0ai/mem0 --skill pin

安装后在 Claude Code 中输入/pin确认已加载。

详细介绍

Mem0 固定

固定一条记忆,将其标记为高优先级并防止被清除。

执行

步骤 1:查找记忆

用户提供搜索查询或记忆 ID。

如果提供记忆 ID:

  • 使用该 ID 调用 get_memory。

如果提供搜索查询:

  • 使用查询和 filters={"AND": [{"user_id": "<id>"}, {"app_id": "<pid>"}]}、top_k=5 调用 search_memories。
  • 显示带有内容预览的编号列表。
  • 询问:“要固定哪条记忆?请输入编号。”
步骤 2:读取当前内容

使用所选记忆 ID 调用 get_memory。保存:

  • original_text — 记忆的文本内容
  • original_metadata — 现有的 metadata 字典
步骤 3:固定记忆

MCP update_memory 工具只接受 memory_id、text 和 source,不接受 metadata 参数。要固定记忆,请在文本末尾追加固定标记:

pinned_text = "[PINNED] " + original_text if not original_text.startswith("[PINNED]") else original_text
update_memory(memory_id=<selected_id>, text=pinned_text)

对于新记忆(用户想固定尚未存储的文本):

  1. 调用 add_memory,并传入:
    • text="[PINNED] <the user's text>"
    • user_id=<active_user_id>
    • app_id=<active_project_id>
    • metadata={"pinned": true, "type": "decision", "confidence": 1.0}
    • infer=False
  2. 响应中包含 event_id。调用一次 get_event_status(event_id=<event_id>) 获取记忆 ID,然后确认。
步骤 4:确认
Pinned: "<memory content, first 80 chars>"
Memory ID: <id>

只有当内容超过 80 个字符时,才追加 ...。

取消固定

如果用户说“取消固定”:

  1. 调用 get_memory 读取当前内容。
  2. 从文本中移除固定标记:
    unpinned_text = original_text.removeprefix("[PINNED] ")
    update_memory(memory_id=<id>, text=unpinned_text)
    
  3. 输出:已取消固定:“<content>...”

评论

支持 Markdown