一键导入
dual-mem
通过 dual-mem 为 agent 管理长期记忆:写入、检索、更新、删除与 scope 管理。 触发场景:用户透露稳定个人信息/偏好、陈述值得长期记住的事实或计划,或对话需要 回忆该用户过去说过什么时。使用 MCP 工具或 CLI(dual-mem)调用 MemoryClient 方法。
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
菜单
通过 dual-mem 为 agent 管理长期记忆:写入、检索、更新、删除与 scope 管理。 触发场景:用户透露稳定个人信息/偏好、陈述值得长期记住的事实或计划,或对话需要 回忆该用户过去说过什么时。使用 MCP 工具或 CLI(dual-mem)调用 MemoryClient 方法。
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
基于 SOC 职业分类
| name | dual-mem |
| description | 通过 dual-mem 为 agent 管理长期记忆:写入、检索、更新、删除与 scope 管理。 触发场景:用户透露稳定个人信息/偏好、陈述值得长期记住的事实或计划,或对话需要 回忆该用户过去说过什么时。使用 MCP 工具或 CLI(dual-mem)调用 MemoryClient 方法。 |
dual-mem 把对话沉淀为分层长期记忆(L0–L7),检索时按 profile / proactive / normal 三路返回。 它管跨会话记忆,不能替代 Agent 自己的当前窗口(WorkingMemory)。
| MCP 工具 | CLI | REST | MemoryClient |
|---|---|---|---|
memory_add | dual-mem add | POST /v1/memories/ | add |
memory_search | dual-mem search | POST /v1/memories/search | search |
memory_list | dual-mem list | GET /v1/memories/ | list |
memory_get | dual-mem get <id> | GET /v1/memories/{id} | get |
memory_update | dual-mem update | PUT /v1/memories/{id} | update |
memory_delete | dual-mem delete | DELETE /v1/memories/{id} | delete |
memory_delete_scope | dual-mem delete-scope | DELETE /v1/memories/?confirm=true | delete_bulk |
memory_list_scopes | dual-mem list-scopes | GET /v1/scopes/ | list_scopes |
memory_digest | dual-mem digest | POST /v1/digest/ | digest |
发现:GET /v1/capabilities 返回完整 HTTP 映射(供 npm MCP codegen)。
单产品默认:只传 user_id 即可(app_id 省略时用 config 的 default_app_id,一般为 "default")。
user_id — 终端用户 ID(必填)app_id / app_ids — 可选;多产品共享同一 Memory 服务时再显式传入agent_id / session_id — 多 Bot 或会话级隔离| 方式 | API | 适用 | 代价 |
|---|---|---|---|
| 单条实时 | add(content=...) | 合规/关键事实需立刻落库 | 每次 ~2 次 LLM + 若干 embed(约 10–15s) |
| 多轮批量 | add(messages=[...]) | 普通助手、示例默认、会话末沉淀 | 同上但 1 次 pipeline,上下文更完整 |
建议(非约束):Agent 集成可「每轮 search、会话结束 add(messages)」以省成本;用户若需 mid-session 单条写入,完全合法。
CLI:--content 或 --messages-file / --messages-json 二选一。
不要写:纯寒暄、仅当前任务用的临时上下文。
单条:
dual-mem add --content "用户在深圳做 ML" --user-id u1
会话结束批量写入多轮对话:
# messages.json: [{"role":"user","content":"..."},{"role":"assistant","content":"..."}, ...]
dual-mem add --messages-file messages.json --user-id u1
# 或内联 JSON
dual-mem add --messages-json '[{"role":"user","content":"我搬到北京了"}]' \
--user-id u1
检索与管理:
dual-mem search "用户做什么工作" --user-id u1
dual-mem list --user-id u1
dual-mem get <memory_id>
dual-mem update <memory_id> --content "新内容"
dual-mem delete <memory_id>
dual-mem delete-scope --user-id u1 --confirm
dual-mem list-scopes
dual-mem digest # dual 模式
memory_add(user_id="u1", content="...")
memory_add(user_id="u1", messages=[{"role":"user","content":"..."}, ...])
memory_search(query="...", user_id="u1")
memory_list(user_id="u1")
memory_get(memory_id="...")
memory_update(memory_id="...", content="...")
memory_delete(memory_id="...")
memory_delete_scope(user_id="u1", confirm=true)
memory_list_scopes()
memory_digest()
启动:dual-mem-mcp(stdio)或 dual-mem-mcp --transport streamable-http --port 8765
intention_limit>0)evolution_chain:同一记忆多次更新时,按最新→最旧排列;[0] 为当前版本。
memory_digest 或自动后台巩固