AI 工具 · · 5 MIN READ

让 Agent 不再从头开始:用 Nowledge Mem 搭建统一记忆中枢

先聊聊:为什么我需要 Nowledge Mem

我经常在几种工作环境间切换。MacBook 上开着 Claude Code 写功能,Linux 服务器跑 Codex 和自动化任务,手机里则记着临时冒出来的想法。真正麻烦的不是某一次会话结束,而是那些已经确认过的东西反复消失:项目约定、做过的取舍、踩过的坑、还没做完的判断。换一台电脑、换一个模型、换一种 Agent,Agent 又会问一遍相同的问题。我知道答案在哪,却要重新把它讲给另一个工具听。

Nowledge Mem 适合放在这个位置。它不是替代笔记软件,而是为接入它的工具留下一份能持续使用的工作记忆:决策、资料、对话沉淀和关联关系都回到同一个地方。Agent 可以检索已有上下文,再继续当前的任务,而不是把每次对话当作一座孤岛。我把数据放在自己控制的主机上,再让其他设备和工具连接它。这样安排以后,记忆不跟着某个客户端走,也不会因为合盖或重启而散在不同角落。

Mem 上手很简单,只需要安装、连接,它几乎支持市面上所有的 Agent 和大模型聊天工具,可以通过 MCP、Agent 插件、浏览器拓展工具,找你所有的 AI 使用记录,之后你就可以在 Mem 中看到你的会话记录(当然产生记忆还需要一段的时间)。

不过这不是本文的重点。真正要讨论的是多设备场景:当多台设备同时运行大模型对话和 AI Agent,怎样把所有设备的 Agent 记忆集中存储。让本地 Codex 知道我上周在远端 OpenClaw 的决策,也能直接用手机 ChatGPT Voice,查询我昨天改动过哪些项目。

一台中枢,多端访问

选一台长期在线的设备作为中枢,所有客户端都连接到这一个实例。记忆、对话、文库和知识图谱保存在中枢上,各端读写同一份后端数据,因此没有“哪台机器是最新版本”的问题。

这也划出了使用边界:

  • 迁移设备或保留离线副本时,使用导出、导入和备份。
  • 希望设备与 Agent 持续使用同一份上下文时,运行一台常驻 Mem,并开启“随处访问 Mem”。

我的中枢是 Mac mini。它始终通电,适合保存数据,也适合承载需要连续上下文的任务。MacBook、Linux 服务器和手机则按需要连接进来。

flowchart LR
  core["Mac mini\nNowledge Mem 主实例\n记忆、线程、文库、知识图谱"]
  link["安全访问入口\nURL + API Key"]
  mac["MacBook\n日常开发与写作"]
  server["Linux 服务器\n自动化与 Agent"]
  mobile["手机\n检索与记录"]

  core --> link
  link --> mac
  link --> server
  link --> mobile

三种接入方式,按需选择

远程访问需要一个可访问的 URL 和 API Key。官方提供三种方式,区别主要在于地址是否稳定,以及你愿意投入多少配置工作。

接入方式适合的场景地址特点
Nowledge Link已订阅 Plus 或 Max,希望少做网络配置稳定的 *.nowledge-mem.com 地址
Quick link第一次验证流程,或短期访问随机的 *.trycloudflare.com 地址
Cloudflare 账号模式已有 Cloudflare 托管域名,计划长期使用自己域名下的固定地址

我使用的是 Cloudflare 模式,但我建议先用 Quick link 把 MacBook、Linux 和手机全部接通。确认它们能正常连接实例后,再决定要不要换成 Nowledge Link 或自己的域名。这样排查问题时,网络、客户端配置和 Agent 集成不会同时成为变量。

先使用 CLI 验证

拿到中枢 URL 和 API Key 后,在另一台 Mac 或 Linux 机器上配置 nmem

1
2
3
nmem config client set url "https://你的-mem-地址"
nmem config client set api-key "nmem_开头的密钥"
nmem status

nmem status 返回正常状态后,当前机器的 CLI 会读取本地客户端配置。官方文档说明,OpenClaw、Bub、Claude Code 等集成也可以复用这份连接配置。对脚本或 CI 来说,则可以使用 NMEM_API_URLNMEM_API_KEY 环境变量,把凭据交给系统密钥管理或 CI Secret。

配置时几个容易忽略的细节

  • Cloudflare 自定义域名模式中,主机服务地址填写 http://127.0.0.1:14242,不要追加路径。
  • 桌面版、主机安装和 Docker 镜像均由 Mem 管理内置的 cloudflared,不需要再维护额外的 sidecar。
  • 某些公司网络、校园网或 VPS 会拦截 UDP/QUIC。Mem 遇到这种情况会改用 HTTP/2 重试;无头服务器也可以通过 TUNNEL_TRANSPORT_PROTOCOL=http2 强制使用 TCP。
  • 局域网和远程访问共用 API Key。轮换 key 后,旧 key 不再可用。
  • Cloudflare account-mode hostname 不能启用 browser-only challenge,例如 I’m Under Attack mode,见 Github Issue
  • 切换到远程实例后,请检查你 Agent 的 MCP host 是否已经修改为远程地址,而不是默认的 http://127.0.0.1:14242

远程访问之后,安全要跟上

把知识库放到可远程访问的地址,便利和权限管理必须一起处理。我会遵守几条简单的规则:

  • Quick link 用于测试,长期入口使用 Nowledge Link 或受控的 Cloudflare 域名。
  • 设备遗失、临时授权结束或怀疑密钥泄露时,立即轮换 API Key。
  • 不把 key 写进仓库、Shell 历史或任务日志;脚本与 CI 从受限环境变量或密钥管理服务读取它。
  • 隧道、URL 和 key 的管理只在中枢本机进行。官方将 Access Anywhere 的管理接口限制为本机调用。
  • 暂时不需要远程访问时,关闭 tunnel,缩小暴露面。
  • 有些时候,直接断网或断电要比让 Agent 检查到底哪里泄露了 Key 要快的多

让记忆留在工作流里

nowledge-mem

在我看来,Nowledge Mem 真正的核心价值,从来不是多了一个可检索的记忆仓库,而是彻底消解了跨设备工作时反复同步背景的冗余。无论是 MacBook 上的一次方案判断、Codex 产出的一次任务结果,还是手机端随手补充的一条记录,都会汇入同一条持续生长的记忆脉络之中。

不必急于一时,它的价值会在持续使用中逐步释放,最终带来的体验往往会超出你的预期。

记忆也是需要积累的