如何使用AgentMemory

更新时间:
复制 MD 格式

AgentMemory 是 Agentic OS 的文件形态记忆 MCP 服务器,为 AI Agent 提供持久化、可搜索、受沙箱保护的记忆空间,支持 OpenClaw、Claude Code、Cursor、Continue 等主流 Agent 场景。本文介绍如何安装配置使用 AgentMemory 组件。

使用范围

本工具适用于以下 Agent 框架与 MCP 客户端:

Agent 框架

集成方式

说明

OpenClaw

插件

通过适配器插件自动转发 memory_search、memory_get、memory_observe、memory_get_context 四个 contract 工具

其它Agent

MCP

通过 stdio MCP 配置接入,多个 memory 工具全部可用

安装方式

支持 RPM 包安装(推荐用于 Alinux 4)与源码一键安装两种方式。

RPM 包安装(推荐)

# 使用 dnf 安装(自动解决依赖)
sudo dnf install agent-memory

RPM 安装到系统级 FHS 路径:

  • 服务二进制:/usr/bin/agent-memory

  • 默认配置:/usr/share/anolisa/agent-memory/default.toml

  • MCP 服务描述符:/usr/share/anolisa/mcp-servers/agent-memory.json

  • systemd user 模板:/usr/lib/systemd/user/anolisa-memory@.service

  • OpenClaw 适配器 bundle:/usr/share/anolisa/adapters/agent-memory/

源码一键安装

git clone https://github.com/alibaba/anolisa.git
cd src/agent-memory
make build # cargo build --release --locked
sudo make install
# 安装到 /usr/local 下
# 构建依赖:Rust ≥ 1.85、cmake(libgit2 vendored 构建)、systemd-devel(journald 审计 fan-out)。 
# 运行时仅支持 Linux(依赖 user_namespace、mount(2)、cgroup v2、inotify、journald)。

配置与集成

RPM 安装后,OpenClaw 适配器资源位于 /usr/share/anolisa/adapters/agent-memory/,包含 scripts/install.sh 用于完成插件注册。其余 MCP 客户端通过 MCP 配置文件直接接入。

OpenClaw 集成

运行 install.sh 脚本自动完成 OpenClaw 插件集成:

sudo bash /usr/share/anolisa/adapters/agent-memory/openclaw/scripts/install.sh
# 安装后重启 OpenClaw gateway: 
openclaw gateway restart 
# 使用 openclaw 命令查看 agent-memory 插件安装状态:
openclaw plugins list |grep memory

插件将 memory_search、memory_get、memory_observe、memory_get_context 四个 contract 工具转发到 agent-memory MCP 服务。

Claude Code 等 Agent 集成

在 Claude Code 的 MCP 配置文件中添加 agent-memory:

{
   "mcpServers":
   {
      "agent-memory":
      {
         "command": "/usr/bin/agent-memory",
         "args": [],
         "env": 
         {
            "USER_ID": "alice",
            "MEMORY_PROFILE": "advanced"
         }
      }
   }
}

systemd 服务管理

RPM 安装后可通过 systemd user 模板管理 agent-memory 服务:

# 启动服务(以 alice 用户为例)
systemctl --user start anolisa-memory@alice
# 查看状态
systemctl --user status anolisa-memory@alice
# 开机自启
systemctl --user enable anolisa-memory@alice
# 查看日志
journalctl --user -u anolisa-memory@alice -f

MCP 工具集

agent-memory 通过 MCP 协议提供 37 个标准工具,按功能分为三个层级:

Tier A — 文件操作(11 个)

mem_read # 读取文件内容
mem_write # 写入文件
mem_append # 追加内容
mem_edit # 编辑文件(old_str 唯一命中替换)
mem_list # 列出目录内容
mem_grep # 正则搜索文件内容
mem_diff # 文件差异对比
mem_mkdir # 创建目录
mem_remove # 删除文件/目录
mem_promote # 会话草稿原子移入持久化仓
mem_session_log # 查看当前会话 JSONL 日志

Tier B — 结构化检索(6 个)

memory_search # BM25/向量/混合语义搜索
memory_observe # 自动捕获观察并去重
memory_get_context # 获取最近修改文件的上下文预览
memory_sessions # 历史会话列表
memory_timeline # 指定会话的工具调用时间线
mem_index_refresh # 强制重建 FTS5 索引

Tier C — 治理与版本(7 个)

mem_snapshot # 创建 tar.gz 快照
mem_snapshot_list # 列出快照
mem_snapshot_restore # 恢复快照
mem_log # Git 变更历史
mem_revert # 文件级 Git 回滚
mem_consolidate # 自动提取原子事实并持久化
mem_compact # 冷数据归档

主权与导入导出(13 个)

memory_about # 按 topic 检索记忆
memory_auto_created # 自动提取事实列表
memory_consent # 同意/撤回记忆操作
memory_forget # 删除指定 topic 的记忆
mem_export # 导出记忆仓为 AMA JSON
mem_import # 从 AMA JSON 导入记忆
memory_task_save # 保存/更新任务
memory_task_list # 任务摘要列表
memory_task_resume # 恢复任务上下文
memory_task_close # 关闭任务
memory_summary # 记忆仓统计概览
memory_session_context # 会话启动上下文注入
mem_dream # 用户画像合成

配置说明

配置文件

默认位置:~/.anolisa/memory.toml。

最小配置:

[global]
user_id = "alice"

[memory]
profile = "advanced" # basic | advanced | expert
max_read_bytes = 1048576 # 1 MiB
max_write_bytes = 16777216 # 16 MiB

[memory.paths]
base_dir = "~/.anolisa/memory"

[memory.mount]
strategy = "auto" # auto | userland | userns

[memory.index]
enabled = true

[memory.consolidation]
enabled = true

Profile 含义

Profile 控制工具可见性,在 tools/list 和 tools/call 两层校验:

  • basic:37 个工具全部展示,弱模型也能用 Tier B 的结构化 API

  • advanced(默认):37 个工具全部展示,强模型应优先使用 Tier A 文件操作

  • expert:隐藏 Tier B 工具(memory_search、memory_observe、memory_get_context 等),tools/call 调用会以 METHOD_NOT_FOUND 拒绝

关键环境变量

每个配置项都有对应 MEMORY_* 环境变量,优先级:env > config.toml > default。

环境变量

说明

默认值

USER_ID

用户标识(命名空间隔离)

MEMORY_PROFILE

配置档位(basic/advanced/expert)

advanced

MEMORY_BASE_DIR

记忆仓根目录

~/.anolisa/memory

MEMORY_MOUNT_STRATEGY

mount 策略(auto/userland/userns)

auto

MEMORY_INDEX_ENABLED

启用 FTS5 索引

true

MEMORY_GIT_ENABLED

启用 git 版本控制

false

MEMORY_EMBEDDING_BACKEND

embedding 后端(none/openai/ollama)

none