随处访问 Mem
用安全的 URL + API Key,把任何设备或智能体接入你的 Mem。
Nowledge Mem 可以通过 Cloudflare Tunnel 暴露本机 API。你会得到公网 URL,但每个请求仍然必须通过 Mem API Key 鉴权。
当你希望把 Mem 作为统一记忆中心,在电脑、智能体节点、浏览器工具之间共享时,就使用本指南。
先选连接方式
| 类型 | 适用场景 | 你会得到的 URL |
|---|---|---|
| 快速链接 | 1 分钟内快速可用 | 随机 *.trycloudflare.com |
| Cloudflare 账号 | 日常长期稳定使用 | 你自己域名下的固定 URL(如 https://mem.example.com) |
开始前确认
重要
请从 设置 → 随处访问 Mem → Guide 打开本指南。
- 快速链接不需要 Cloudflare 账号,也不需要域名。
- Cloudflare 账号模式要求你已经有一个在 Cloudflare 托管的域名。
- 如果你还没有域名,先使用 快速链接。
- 在 Cloudflare 账号模式里,只有创建 hostname route 之后才会出现最终公网 URL。
路径 A:快速链接(无需账号)
在另一台设备验证
export NMEM_API_URL="https://<your-quick-link>"
export NMEM_API_KEY="nmem_..."
nmem status预期:status ok。
路径 B:Cloudflare 账号(固定 URL)
前提
你需要先在 Cloudflare DNS 中管理自己的域名(例如 example.com),才能拿到固定 URL。
创建 tunnel 并拿到 token
在 Cloudflare Zero Trust 中:
- 打开 Networks → Connectors → Create a tunnel。
- 点击 Select Cloudflared。

- 输入 tunnel 名称并点击 Save tunnel。

- 在 Install and run connectors 中,从命令复制 token,例如:
sudo cloudflared service install ... <TOKEN>在 Mem 桌面端中,你可以粘贴:
- 原始 token;或
- 完整命令(支持
service install <token>、--token <token>、--token=<token>)。
Mem 会自动提取 token。

创建 Public Hostname 路由
在 tunnel 的路由 / hostname routes 页面:
- 创建 hostname(如
mem.example.com)。 - 绑定到你刚创建的 tunnel。
这一步会创建可用的固定公网 URL。

将 hostname 映射到本机 Mem API
- 打开 Networks → Connectors → 你创建的 tunnel。

- 在 Published application routes 点击 Add a published application route。

- 将
mem.example.com映射到本机 Mem 服务:
- Subdomain:
mem - Domain:你在 Cloudflare 托管的域名
- Service Type:
HTTP - Service URL:
http://127.0.0.1:14242
不要追加 /remote-api。

回到 Mem 保存并启动
回到 设置 → 随处访问 Mem → Cloudflare account:
- Public URL:
https://mem.example.com - Tunnel token:粘贴原始 token 或完整
cloudflared命令
然后:
- 点击 Save
- 点击 Start
- 如需新 key,点击 Rotate
- 点击 Copy 复制 URL 和 API key
在另一台设备验证
export NMEM_API_URL="https://mem.example.com"
export NMEM_API_KEY="nmem_..."
nmem status预期:status ok。
在其他客户端使用
nmem CLI
export NMEM_API_URL="https://<your-url>"
export NMEM_API_KEY="nmem_..."
nmem status
nmem m search "project notes"浏览器扩展(SidePanel)
打开任意受支持的 AI 对话页面,然后打开 Nowledge Mem Exchange 侧边栏:
- 点击 Settings
- 在 Access Mem Anywhere 中粘贴从 Mem 桌面端复制的终端环境变量:
export NMEM_API_URL="https://<your-url>"
export NMEM_API_KEY="nmem_..."- 点击 Fill URL + key
- 点击 Save
- 点击 Test connection(应显示成功)
也可以在同一区域手动填写 URL + key。
OpenClaw 插件
两种方式都可以,选你顺手的:
方式 A — 写入插件配置(推荐)
在 ~/.openclaw/openclaw.json 的插件条目里加上 apiUrl 和 apiKey:
{
"plugins": {
"slots": { "memory": "openclaw-nowledge-mem" },
"entries": {
"openclaw-nowledge-mem": {
"enabled": true,
"config": {
"autoRecall": true,
"autoCapture": false,
"maxRecallResults": 5,
"apiUrl": "https://<your-url>",
"apiKey": "nmem_..."
}
}
}
}
}API key 只通过环境变量传给 nmem 子进程,不会出现在日志或命令行参数里。
方式 B — 环境变量
在启动 OpenClaw 前设置:
export NMEM_API_URL="https://<your-url>"
export NMEM_API_KEY="nmem_..."两种方式效果相同。如果 OpenClaw 作为服务运行、或想让配置自成一体,用方式 A;想把密钥放在配置文件之外,用方式 B。
MCP / 智能体节点
MCP 客户端通过 HTTP 连接,需要在 Authorization 请求头中传入 API key。
Cursor(~/.cursor/mcp.json 或工作区 .cursor/mcp.json):
{
"mcpServers": {
"nowledge-mem": {
"url": "https://<your-url>/mcp",
"type": "streamableHttp",
"headers": {
"APP": "Cursor",
"Authorization": "Bearer nmem_..."
}
}
}
}Claude Desktop(~/Library/Application Support/Claude/claude_desktop_config.json):
{
"mcpServers": {
"nowledge-mem": {
"url": "https://<your-url>/mcp",
"type": "streamableHttp",
"headers": {
"APP": "Claude",
"Authorization": "Bearer nmem_..."
}
}
}
}Codex CLI(~/.codex/config.toml):
[mcp_servers.nowledge-mem]
url = "https://<your-url>/mcp"
[mcp_servers.nowledge-mem.http_headers]
APP = "Codex"
Authorization = "Bearer nmem_..."Claude Code / CI / 其他基于 Shell 的工具 — 环境变量也可以:
export NMEM_API_URL="https://<your-url>"
export NMEM_API_KEY="nmem_..."快速健康检查
curl -H "Authorization: Bearer $NMEM_API_KEY" "$NMEM_API_URL/health"预期:返回健康检查 JSON。
错误 key 检查:
curl -H "Authorization: Bearer wrong_key" "$NMEM_API_URL/health"预期:401。
如果代理会剥离鉴权头:
curl "$NMEM_API_URL/health?nmem_api_key=$NMEM_API_KEY"安全与运行建议
- 每个远程请求都必须携带 API key。
- 可随时在设置中 Rotate(旧 key 立即失效)。
- 首次成功 Start 后,应用重启会自动重连,直到你点击 Stop。
- Browse-Now / Browser Bridge 自动化端点仅限本机访问,不会通过「随处访问 Mem」暴露。
- 不需要远程访问时请关闭 tunnel。
常见问题
- Start 超时:网络/代理可能拦截了 Cloudflare 流量,重试或切换到账号模式。
401 Missing API key:通常是代理移除了鉴权头。升级nmem,或手动使用 query 回退验证。429 Too many invalid auth attempts:错误 key 被连续重试。重新复制 key 或点击 Rotate。