mcp server
memento
A shared brain for your AI coding tools — collects conversations, plans and memory from Claude Code / Cursor / Codex / Obsidian / Antigravity, self-hosted, cross-device, MCP-ready
Set up
Runs on your computer. Pick your agent and operating system.
This project does not publish an install method we can turn into a config. Follow the README instead.
README
synced Oct 27, 2026Memento
给你的 AI 工具建个共享大脑与多模态工作台
跨设备、跨工具自动采集 AI 编程对话与记忆,自建后端汇总,内置全能文档与媒体视窗(Office/PPT 16:9 横屏放映、万行表格切片、音视频 GPU 加速),Web + MCP 统一查看、搜索、召回。
快速开始 · 架构 · 支持的工具 · 自部署 · MCP 接入
✨ 它能做什么
- 🧠 跨设备同步对话 — Mac / Linux / Windows 上的 Claude Code / Codex / Cursor / Antigravity / WorkBuddy / Windsurf 等 10+ 工具,聊过的内容增量汇总
- 🖥️ 全能多模态文档与工作台视窗 — 应用内直接沉浸式预览 Office (PPT / Word / Excel)、PDF、代码产物与音视频;手机端与移动设备支持 100vw × 100dvh 全屏放映与 90° 横屏沉浸放映(专为 16:9 幻灯片打造);万行 CSV / TSV 动态交互表格切片分页渲染,毫秒级即时响应;支持微信公众号草稿一键发布与 2.35:1 高清插图提取同步;GPU 3D 合成硬件加速与音视频硬件解码句柄安全解绑
- 🤖 全天候 AI 执事与智能交互 — 全屏自适应会话流、带闪电标的深度思考过程全屏铺满、多智能体协同问答;个人设置中支持 Claude Code 最新模型、OpenAI、DeepSeek 等主流大模型自由配置切换,额度智能探测与失效即时告警
- 👤 个人画像与 3D 数字分身 — 个人画像引导设置性别、卡通形象与 3D 响应式分身;沟通铁律、技术偏好与长期记忆深度定制,在所有跨设备对话中持续自进化
- ⚡ 技能进化与智能避坑系统 — 每晚复盘自动将完成的多步流程总结为技能(Skills)写入本地
~/.claude/skills、~/.agents/skills等;查明原因的失败自动记为踩坑指南(Pitfalls);动手前调用memory_check_rule自动前置校验拦截 - 📋 工作待办闭环管理 — 会话中识别到的待办事项自动归集到工作待办(
/inbox);支持优先级、到期推送与一键状态同步,任务闭环 - 🌅 作息节律与两阶段 AI 日报 — 昼夜节律认知循环,每天 23:30 自动跑两阶段:先对每篇文档生成摘要,再聚合成跨工具每日 digest,清晰掌握全天产出
- 🔍 混合检索 — BGE-M3 语义向量 + jieba 分词的全文索引,中英文均能精准召回
- 🕸️ 知识图谱 — LLM 自动从对话抽实体(项目 / 工具 / 技术 / 人物 / 概念)、关系、观察;超过 7 天的老观察自动压缩成 summary
- 🔗 MCP 原生服务 — 查、钻、写、总览之外,还有动手前的检查(
memory_check_rule)、技能(memory_skill)、踩坑(memory_pitfall)和待办(todo_list/todo_add/todo_update);任何 AI IDE 都能直接查、读、改你的记忆 - ♻️ 记忆新陈代谢 — 记录每条记忆被 AI 用到的次数;重复和被新说法推翻的旧记忆标记为"已取代"(画像同步删掉旧行),60 天没用的自动总结转为"沉睡";只打标记不删除,随时可唤醒
- 📏 检索评测 — 从你的资料生成带版本号的固定题集,每周用问答同一套检索作答,前 5 命中率 / MRR 下降时告警
- 🔒 入队前脱敏安全 — 守护进程本地预先经过 14 类密钥正则过滤(OpenAI / Anthropic / GitHub / Slack / Telegram / AWS / Bearer / 私钥 / URL 内嵌凭证 …),磁盘 SQLite 离线队列安全无虞
- 🌐 公开分享 — 项目时间线 / 日报一键生成 share 链接,带 GeoIP 访客统计、有效期、随时撤销
- 🛡️ 完全自托管 — Docker Compose 一键起,Postgres + Redis + MinIO 全在你机器上,数据不出门
- 🔐 多租户隔离 — 多用户独立空间,owner / admin / viewer 三级角色 + 细粒度授权 + 审计日志
- ⚡ 现代化桌面端与守护进程 — Electron 原生跨平台,免装 Python,系统托盘常驻,Mac 支持最小化到托盘,登录状态永久记住,切换功能零延迟,断网离线队列、网络恢复自愈重试
🏗️ 架构
graph TB
subgraph DEV["📱 用户设备 Mac/Linux/Windows"]
direction LR
CC["Claude Code<br/>~/.claude"]
CDX["Codex<br/>~/.codex"]
CUR["Cursor<br/>~/.cursor"]
AG["Antigravity<br/>~/.gemini/antigravity"]
WB["WorkBuddy<br/>~/.workbuddy"]
WS["Windsurf<br/>~/.codeium/windsurf"]
CL["Cline<br/>VS Code globalStorage"]
OC["OpenClaw<br/>~/.openclaw"]
HM["Hermes<br/>~/.hermes"]
OBS["Obsidian Vault"]
COL["Memento 守护进程<br/>桌面端内置 / memento-daemon<br/>文件监听 · 增量上传<br/>上传前脱敏"]
CC --- COL
CDX --- COL
CUR --- COL
AG --- COL
WB --- COL
WS --- COL
CL --- COL
OC --- COL
HM --- COL
OBS --- COL
end
subgraph SRV["☁️ 自托管 Memento 服务端"]
direction TB
NGX["nginx<br/>HTTPS + gzip"]
subgraph DK["Docker Compose"]
direction LR
API["FastAPI :8000"]
WEB["Next.js Web :3000"]
CW["Celery Worker"]
CB["Celery Beat"]
PG[("PostgreSQL 16<br/>+ pgvector")]
RD[("Redis 7")]
S3[("MinIO<br/>S3 兼容")]
end
EMB["BGE-M3 Embedding<br/>:8002 (Docker / 宿主)"]
NGX --> API
NGX --> WEB
API <--> PG
API <--> RD
API <--> S3
API -.调用.-> EMB
CW <--> PG
CW <--> RD
CB --> CW
end
subgraph CLT["🤖 AI 工具 MCP 客户端"]
direction LR
MCC["Claude Code"]
MCDX["Codex"]
MCUR["Cursor"]
MAG["Antigravity"]
end
MCP["@memento/mcp<br/>MCP Server"]
MCC --> MCP
MCDX --> MCP
MCUR --> MCP
MAG --> MCP
COL ==>|"HTTPS + collector token"| NGX
MCP ==>|"HTTPS + JWT"| NGX
subgraph PUB["🌍 公开访问"]
SHARE["分享链接 /s/<token>"]
GEO["GeoIP DB<br/>访客统计"]
end
NGX --> SHARE
SHARE --> GEO
classDef device fill:#fef3c7,stroke:#d97706,color:#92400e
classDef server fill:#dbeafe,stroke:#2563eb,color:#1e40af
classDef client fill:#fce7f3,stroke:#db2777,color:#831843
classDef public fill:#dcfce7,stroke:#16a34a,color:#14532d
class CC,CDX,CUR,AG,OC,HM,OBS,COL device
class API,WEB,CW,CB,PG,RD,S3,EMB,NGX server
class MCC,MCDX,MCUR,MAG,MCP client
class SHARE,GEO public
数据流(单条对话从产生到可搜)
sequenceDiagram
participant T as AI 工具
participant W as 本地文件
participant C as Collector
participant Q as SQLite 队列
participant A as API
participant P as Postgres
participant E as Embedding
participant M as MCP
T->>W: 写 .jsonl 对话
W->>C: watchdog 文件事件
C->>C: 解析 + 脱敏
C->>Q: 入离线队列
Q->>A: HTTPS POST(失败重试)
A->>P: 写 documents / conversation_messages / content_tsv
A-->>E: 异步算 embedding
E->>P: 写 document_embeddings (pgvector)
A-->>P: LLM 抽 entities / relations
Note over M: 用户在 Claude Code 里调 memory_search
M->>A: GET /api/memory/semantic
A->>E: 算 query embedding
E->>P: cosine_distance 排序
P-->>M: 返回相关 chunk
Embedding 失败时
embedding_status写为failed,Celery beat 每 15 分钟扫pending/failed自动重试,不会因为单次抖动丢向量。
🧰 支持的 AI 工具
| 工具 | 采集内容 | 格式 |
|---|---|---|
| Claude Code | 对话、记忆、计划、历史 | JSONL / Markdown |
| OpenClaw | 对话会话、身份、记忆、学习、技能 | JSONL / Markdown |
| Codex | 对话、历史、技能、状态 | JSONL / TOML / SQLite |
| Antigravity | 完整对话(内置解密 .pb)、计划、代码快照 | Protobuf / Markdown |
| WorkBuddy | 任务、多模态产物、全类型文档与工作台联动 | Markdown / Office / Media |
| Obsidian | 所有笔记 | Markdown |
| Cursor | 对话、技能、MCP 配置 | JSONL / Markdown |
| Hermes | 完整对话(含工具调用)、persona、技能、CLI 历史 | JSON / Markdown / SQLite |
| Windsurf | 对话、级联规则 | JSONL / Markdown |
| VS Code | 扩展设置、智能体工作区规则 | JSON / Markdown |
🚀 快速开始
一键安装(推荐)
# macOS / Linux
curl -fsSL https://mem.ihasy.com/install.sh | sh
# Windows (PowerShell)
iwr https://mem.ihasy.com/install.ps1 -useb | iex
也可以浏览器打开 https://mem.ihasy.com/install 拿复制好的命令。脚本会下载仓库到 ~/memento/(可用 MEMENTO_INSTALL_DIR 覆盖),然后跑内置 ./install.sh。
已 clone 仓库
git clone https://github.com/ddong8/memento.git && cd memento
./install.sh # macOS / Linux
.\install.ps1 # Windows
install.sh 自动完成:
- 生成
.env随机密钥(JWT / collector token / MinIO / Postgres 密码) docker compose up -d --build起 7 个容器- 探活 API
/health - 交互提示创建第一个用户(自动 owner,拿 collector_token)
- 把本机配到这台服务器,本机有 Node.js 20+ 时从仓库构建采集守护进程并注册为系统服务(没有 Node 就装桌面端,它会自动读取这份配置)
可选参数:
| 命令 | 说明 |
|---|---|
./install.sh embedding | 装 BGE-M3 嵌入服务(Docker 模式,~1.3 GB,语义搜索 / MCP 召回必需) |
./install.sh embedding --native | 改用宿主 venv 安装(NVIDIA CUDA / Apple MPS GPU 加速场景) |
./install.sh doctor | 检查所有服务状态 |
./install.sh update | git pull + 重建 + 升级 |
./install.sh uninstall | 停服务,保留数据和配置 |
./install.sh uninstall --purge | 同上 + 清 Docker 数据卷 + .env |
./install.sh uninstall --all | 核弹级:pip 包 / ~/.memento / 模型缓存 / Docker 镜像 / MCP 配置 全清 |
服务端口
| 端口 | 服务 |
|---|---|
| 8001 | API (Swagger: /docs) |
| 3001 | Web UI |
| 8002 | Embedding(--native 模式宿主;Docker 模式不暴露到宿主,走 embedding:8002 docker DNS) |
| 5433 | PostgreSQL |
| 6380 | Redis |
| 9000 / 9001 | MinIO / 控制台 |
端口与常见项目错开,避免冲突。
💻 在额外设备上接入
把你日常用 AI 工具的每台 Mac / Windows / Linux 接到服务端,有两种方式:
方式一:桌面客户端(推荐)
不想折腾环境、追求最流畅桌面体验的,直接下载客户端 —— 基于 Electron 打造,内置采集守护进程与 MCP sidecar(无需安装任何运行环境),系统托盘常驻,登录后自动开始采集,自动更新。
| 平台 | 安装包 | 说明 |
|---|---|---|
| macOS (Apple Silicon) | .dmg | 拖进 Applications 即可,支持 Mac 最小化到系统托盘 |
| Windows | .exe | 现代化 NSIS 安装版,支持任务栏托盘与开机自启 |
| Linux | .AppImage / .deb | AppImage 赋予执行权限直接运行,deb 包支持 dpkg -i |
| Android | .apk | 原生移动端应用,手机端沉浸查看会话流、多模态文档视窗与作息日报 |
开箱即用体验:
- 原生独立窗口直接加载 Memento 工作台,登录状态永久记住,重启无需反复重新登录。
- 首次打开在界面中直接登录或注册(或使用 GitHub 授权登录),客户端全自动托管凭证与守护进程,自动配齐本地 MCP 服务并启动后台采集,普通用户全程无需接触、复制或管理任何 Token。
- 记住上次打开的菜单状态,切换功能零延迟;内置全格式多模态文档与音视频工作台。
- 客户端会在新版本发布时自动检查并提示安装(带 minisign 签名校验)。
macOS 首次打开若提示“无法验证开发者”,右键图标 → 打开,或在终端执行
xattr -dr com.apple.quarantine /Applications/Memento.app。
方式二:命令行服务(Node.js 守护进程)
适合无头服务器、Linux VPS 或习惯 CLI 终端的环境,依赖 Node.js ≥ 20。守护进程与桌面端复用同一套核心逻辑(packages/daemon):
git clone https://github.com/ddong8/memento.git && cd memento
npm ci --workspace @memento/daemon --workspace @memento/core --include-workspace-root
npm run build -w @memento/daemon
# 登录并注册为系统服务(自动开机自启)
node packages/daemon/dist/cli.js login <collector token> https://mem.ihasy.com
node packages/daemon/dist/cli.js install-service
常用管理命令:
node packages/daemon/dist/cli.js status # 查看状态
node packages/daemon/dist/cli.js run # 前台调试运行
node packages/daemon/dist/cli.js install-service # 登录后自动启动
node packages/daemon/dist/cli.js uninstall-service # 取消自动启动
按操作系统自动适配:macOS launchd / Linux systemd user / Windows 启动项。桌面端与守护进程同一时间保证单实例运行(共用 ~/.memento)。
🕸️ 知识图谱
LLM 自动从同步进来的对话和文档里抽:
- 实体 (
knowledge_entities) — 项目 / 工具 / 技术 / 人物 / 概念,跨对话去重合并 - 关系 (
knowledge_relations) — 实体之间的uses/creates/depends_on/discussed - 观察 (
observations) — 关于某个实体的具体事实陈述,带时间戳和来源 doc
自动压缩:同一实体超过 7 天的累积观察会被 LLM 合并成一段更短的 summary,保语义、省空间。压缩窗口可通过 MEMENTO_COMPACTION_AGE_DAYS 调整。
通过 MCP 工具读写:写用 memory_store,读用 memory_graph(entity_name) 拿邻居 + 观察、memory_context(project) 拿项目级上下文、memory_recall(category, days) 拿时间序列。Web /memory 页可视化查看。
🧠 MCP 记忆服务
桌面端自带 MCP 服务(@memento/mcp),在「本机采集」页一键复制 Claude Code / Codex / 其他工具的配置;没装桌面端的机器可以在仓库里 npm ci && npm run build -w @memento/mcp 后运行 node packages/mcp/dist/cli.js(读取 ~/.memento/collector.json 的登录信息,也可以传 --server URL --token TOKEN)。各工具的配置位置:
| AI 工具 | MCP 配置文件 | 写入方式 |
|---|---|---|
| Claude Code | ~/.claude.json | claude mcp add CLI |
| Cursor | ~/.cursor/mcp.json | JSON mcpServers.memento-memory |
| Windsurf | ~/.codeium/windsurf/mcp_config.json | 同上 |
| Antigravity | ~/.gemini/antigravity/mcp_config.json | 同上 |
| Codex | ~/.codex/config.toml | TOML [mcp_servers.memento-memory] |
| OpenClaw | ~/.openclaw/openclaw.json | openclaw mcp set CLI |
接入后在任何 AI IDE 里可以调:
| 工具 | 用途 |
|---|---|
| 查找 | |
memory_search(q, limit, tool_filter, days) | 跨工具混合检索(BGE-M3 语义 + jieba 全文),days 限定时间窗,tool_filter 限定工具 |
memory_recall(category, days, project, date) | 按类别召回最近 N 天(或指定日期)的记录 |
memory_context(project_name) | 切换项目时拉相关上下文(文档清单 + 项目元信息) |
| 钻取 | |
memory_open(doc_id) | 拿一篇文档的全文(配合 search 用,先找到再"打开") |
memory_conversation(doc_id, limit, offset) | 把对话展开成 role/content/timestamp 消息序列,支持分页 |
memory_graph(entity_name) | 知识图谱钻取:实体 summary + 出/入向关系 + 近期观察 |
| 写入 | |
memory_store(content, entity_name, entity_type) | 主动保存观察到知识图谱 |
| 总览 | |
daily_summary(date) | 某天的跨工具活动汇总 + AI 摘要 |
| 动手前 / 学到的 | |
memory_check_rule(action_type, project_name, details) | 部署、发版、迁移、改数据前调用:返回相关铁律、以前踩过的坑、可照做的技能 |
memory_skill(query) | 取出一个已发布技能的完整步骤(不带参数列出全部) |
memory_pitfall(title, symptom, fix, cause, project) | 查明原因并解决一个失败后记下来,下次同类操作前提醒 |
todo_list(project) / todo_add(title, detail, due, project) / todo_update(todo_id, status, title, due) | 待办:列出、记下"以后再做"的事、完成或放弃 |
本机装了采集器时,MCP 服务不需要传 --token:自动读取 ~/.memento/collector.json 里的服务地址和设备令牌,令牌轮换后也会自动换用新的。
外加 4 个 MCP resources(以 URI 形式暴露,IDE 可订阅):
| URI | 内容 |
|---|---|
memory://projects | 所有项目列表 |
memory://projects/{name} | 单个项目详情(对话 / 实体 / 观察) |
memory://identity/{tool} | 指定工具的"身份卡"(用户偏好 / 长期记忆) |
memory://daily/{date} | 某天的活动汇总 |
👥 用户与权限
| 角色 | 说明 |
|---|---|
owner | 首个注册用户。可改任意用户 role/status,看全量数据 |
admin | 可管理设备、看 audit log;invite_only 模式下还能审批 pending 用户 |
viewer | 只读(默认)。只能看分给自己的 project/tool |
pending | 仅出现在 invite_only 模式下还没拿到邀请码就自助注册的边角场景 |
注册模式(MEMENTO_REGISTRATION_MODE,默认 open):
| 模式 | 行为 |
|---|---|
open | 任何人自助注册即激活,服务端直接发 collector token,无需 admin 介入 |
invite_only | 必须带 invite_code 才能注册,否则拒绝;邀请码由 owner/admin 在 /admin/invites 创建 |
closed | 注册接口完全关闭(给只有 owner 一个人用的部署) |
关键流程:
- 注册:
/auth/register— 首个用户自动 owner + active;之后按MEMENTO_REGISTRATION_MODE决定 - 桌面客户端: 原生独立窗口直接打开 Memento 工作台,登录后内置守护进程与 MCP 服务自动静默配对启动,用户全程无需手动干预任何 Token
- 细粒度授权:
/admin/permissions按 project / tool 给 viewer 发 read/write 权限 - 审计日志:
access_logs表落库每次敏感操作(user_id / action / IP / metadata),便于事后追溯 - 会话保持与自动授权: 桌面端自动维护登录态与静默授权,开机自动后台运行,保持全天候静默采集与离线队列同步
🌐 公开分享
项目时间线和日报可以一键生成公开分享链接:
- 进
/projects/<id>/timeline或/daily/<date>,右上角 分享 按钮 - 选有效期(可永久),生成
/s/<token>URL - 访客无需登录直接查看
- 后台记录访客 IP + 国家/地区/城市(本地 GeoIP DB,无外发请求)
- 随时可撤销
🛠️ 技术栈
| 层级 | 技术 |
|---|---|
| 采集守护进程 | Node.js ≥20, TypeScript, ws(随桌面端分发,也可单独运行) |
| MCP 记忆 | TypeScript, @modelcontextprotocol/sdk(stdio,调用服务端接口) |
| 服务端 | Python ≥3.12, FastAPI ≥0.115, SQLAlchemy 2.0 async, asyncpg, Celery |
| 数据库 | PostgreSQL 16 (+ pgvector + pg_trgm), Redis 7, MinIO (S3 兼容) |
| 前端 | Next.js 16, React 19, TypeScript, Tailwind CSS 4 |
| AI 摘要 / 图谱 | Anthropic Claude API + OpenAI 兼容端点(Kimi / DashScope...) |
| Embedding | BAAI/bge-m3:OpenAI 兼容接口(如硅基流动),或自建 BGE-M3 服务(Docker 容器;--native 跑宿主 venv,Linux 可用 CUDA) |
| GeoIP | MaxMind GeoLite2 / db-ip city-lite(离线 mmdb) |
| 部署 | Docker Compose(7 服务) |
⚙️ 后台任务
Celery beat 调度的定时任务:
| 任务 | 触发 | 作用 |
|---|---|---|
daily_digest | 每天 23:30 | 生成跨工具的每日 AI 活动汇总(逐 doc 摘要 → 聚合) |
embedding_retry | 每 15 分钟 | 扫 embedding_status=pending/failed 的 doc 重新算向量 |
tsvector_backfill | 启动时 | 给历史数据补全 jieba 分词的全文索引 |
memory_compaction | 手动 / 周期 | 合并 7 天以上累积过多的实体观察为 summary |
📁 目录结构
memento/
├── packages/
│ ├── core/ # @memento/core:接口类型、提问流、任务事件(各端共用)
│ ├── daemon/ # @memento/daemon:本机采集 + 派活执行 + 画像/技能写入
│ └── mcp/ # @memento/mcp:MCP 记忆服务(随桌面端分发)
├── apps/
│ ├── desktop/ # Electron 桌面端(Memento)
│ ├── mobile/ # Expo 手机端(Memento)
│ └── web/ # Next.js 16 前端
│ ├── src/app/ # 18+ 页面
│ └── src/components/ # Aurora 设计系统
├── server/ # 后端 FastAPI
│ └── server/
│ ├── main.py # 入口 + schema 迁移 + validate_production
│ ├── config.py # MEMENTO_ 前缀 settings + fail-fast
│ ├── middleware/ # JWT + collector token (constant-time)
│ ├── api/ # REST + SSE
│ ├── db/ # 16 张表
│ ├── services/ # ingest / embedding / graph / cache / geoip
│ └── tasks/ # Celery worker + beat
├── embedding/ # BGE-M3 宿主服务
├── scripts/ # install.py 后端 + 工具脚本
├── deploy/bootstrap/ # curl 一键安装(install.sh / .ps1 / index.html)
├── docs/ # project-architecture.md / typescript-migration.md
└── docker-compose.yml
⚙️ 环境变量
所有变量统一 MEMENTO_ 前缀。
| 变量 | 默认值 | 说明 |
|---|---|---|
MEMENTO_SERVER_URL | http://localhost:8001 | 服务端 API 地址 |
MEMENTO_SERVER_TOKEN | — | collector token |
MEMENTO_OBSIDIAN_VAULT_PATH | 自动发现 | Obsidian vault 路径 |
MEMENTO_NONINTERACTIVE | — | setup 时设 1 跳过 prompt |
| 变量 | 默认值 | 说明 |
|---|---|---|
MEMENTO_DATABASE_URL | postgresql+asyncpg://postgres:postgres@localhost:5433/memento | Postgres 连接 |
MEMENTO_REDIS_URL | redis://localhost:6380/0 | Redis broker + backend |
MEMENTO_COLLECTOR_TOKEN | collector-dev-token | 兜底 collector token(dev 用) |
MEMENTO_SECRET_KEY | change-me-in-production | JWT 签名密钥(生产必须覆盖) |
MEMENTO_S3_ENDPOINT | http://localhost:9000 | MinIO/S3 端点 |
MEMENTO_S3_ACCESS_KEY / MEMENTO_S3_SECRET_KEY | minioadmin | MinIO 凭据 |
MEMENTO_S3_BUCKET | memento | 大文件 bucket |
MEMENTO_ANTHROPIC_API_KEY | — | Claude API(AI 摘要) |
MEMENTO_AI_API_KEY / _BASE_URL / _MODEL | — / dashscope / kimi-k2.5 | 主 OpenAI 兼容 AI 端点 |
MEMENTO_AI_FALLBACK_API_KEY / _BASE_URL / _MODEL | OneAPI / qwen3.8-27b | AI 自动故障转移端点 (Fallback) |
MEMENTO_AI_PROVIDERS | — | JSON 数组形式的多级 AI 提供方列表 |
MEMENTO_EMBEDDING_SERVER_URL | http://embedding:8002 | Docker 模式默认;--native 装的宿主服务请改为 http://host.docker.internal:8002 |
MEMENTO_GEOIP_DB | /data/geoip/GeoLite2-City.mmdb | GeoIP 数据库路径 |
MEMENTO_DEBUG | 0 | 设 1 允许 dev 默认值启动 |
MEMENTO_PORT | 8000 | API 监听端口 |
| 变量 | 默认值 | 说明 |
|---|---|---|
MEMENTO_EMBEDDING_PORT | 8002 | HTTP 端口 |
MEMENTO_EMBEDDING_MODEL_NAME | BAAI/bge-m3 | sentence-transformers 模型 |
🌐 远程访问 / 自定义域名
-
前端 API 地址自动跟随
window.location.hostname(代码里getApiBase(),不写死) -
Docker 端口映射自动支持 IPv4 + IPv6
-
放行域名改 server/server/main.py 里的
allow_origin_regex,默认:allow_origin_regex=r"(https?://localhost:\d+|https?://mem\.ihasy\.com)"
🗑️ 卸载
./install.sh uninstall # 只停容器和采集服务,保留数据 / .env
./install.sh uninstall --purge # 同上 + 删 Docker 数据卷 + .env
./install.sh uninstall --all # 核弹级(加 -y 跳过二次确认)
--all 会清:
- 采集守护进程服务,以及旧版留下的 pip 包(memento-brain-* + 旧品牌 daily-report-*)
~/.memento+~/.daily-report(旧路径)- Collector 日志(macOS / Linux / Windows 各自路径)
- Embedding venv + HuggingFace 模型缓存(~1.3 GB)
- Docker 镜像 + 数据卷
.env/.env.local- AI 工具的 MCP
memento-memory条目
node packages/daemon/dist/cli.js uninstall-service # 卸载守护进程自启服务
rm -rf ~/.memento # 清理本地配置与离线队列
# 日志目录(按系统选一):
rm -rf ~/Library/Logs/memento # macOS
rm -rf ~/.local/share/memento/logs # Linux
# Windows: Remove-Item -Recurse $env:LOCALAPPDATA\memento
# AI 工具的 MCP 配置文件中手动移除 memento-memory 配置块即可
📄 License
本项目采用 AGPL-3.0 许可证。
简单说:个人使用、自托管、内部用、研究学习都免费。但如果你拿这份代码(或任何改动)对外提供网络服务(SaaS / 公开 host),按 AGPL 第 13 条,你必须把你修改后的完整源码也按 AGPL 公开。
商业授权(免除 AGPL 限制、闭源使用、SaaS 化等场景)请联系作者。