MemOS 2.0 Stardust
为 AI 应用与智能体提供可管理的长期记忆服务。
按维度查看评分与理由
证据显示:README 中建议 API 密钥保存在服务端,但未明确权限最小化原则;安装脚本直接执行 curl | bash,未提示用户确认;数据流描述不完整,未说明数据如何被收集、存储和共享;敏感数据处理未详细说明;依赖版本有范围但未进行安全审计;外部效果(如网络请求)未明确说明;回滚机制未提及;发布者身份未验证,但代码中有明确的作者和联系方式。扣分原因:缺乏明确的权限最小化、用户确认、数据流透明、敏感数据处理、依赖安全审计、外部效果说明、回滚机制和来源归属的详细证据。
证据显示:README 和代码中的描述基本一致,但存在一些不一致(如版本号在 pyproject.toml 中为 2.0.27,但 README 中未明确);依赖项有版本范围,但未验证可用性;错误消息在测试中有部分体现,但整体上缺乏详细的失败处理文档。扣分原因:自洽性有轻微不一致,依赖可用性未验证,失败消息不够全面。
证据显示:README 明确了目标受众(AI 助手、客服、个性化代理等)和使用场景;能力边界在功能列表中有所描述,但未明确限制;触发条件(如自动召回)在测试中有体现,但未在文档中详细说明;环境适配(如 Docker、本地安装)有说明。扣分原因:能力边界和触发条件描述不够精确,环境适配未覆盖所有平台。
证据显示:README 结构清晰,有快速开始、功能列表、性能数据等;安装说明详细,包括 Docker 和本地安装;命名稳定(如 MemOS、memos-local-plugin);有示例代码和 FAQ 链接;已知限制未明确列出;许可证为 Apache-2.0;版本号在 pyproject.toml 中,但未提供 changelog;维护责任在 README 中有社区链接。扣分原因:已知限制未明确,版本变更日志缺失。
证据显示:输出可用性在示例中体现,但未评估实际输出质量;边际价值在性能数据中体现,但未与现有方案对比;成本效益未详细分析。扣分原因:缺乏对输出质量、边际价值和成本效益的深入评估。
证据显示:性能数据在 README 中列出,但未提供原始数据或复现方法;跨来源验证不足,仅依赖自身文档;事实与推断未明确区分。扣分原因:缺乏可追溯的验证证据,跨来源佐证不足,事实与推断混淆。
- 安装脚本直接执行远程代码,存在供应链风险,建议审查后再运行。
- API 密钥应严格保密,避免泄露。
- 性能数据未提供复现方法,需谨慎对待。
这个 Agent 能做什么,适合哪些场景?
MemOS 是面向 LLM 与 AI 智能体的记忆操作系统,提供长期记忆的存储、检索与管理接口。它将记忆组织为可检查、可编辑的图结构,并支持文本、图像、工具轨迹和人格等多模态记忆。自托管服务以 REST API 运行,可通过 Docker 同时启动 MemOS API、Neo4j 和 Qdrant;也可在已有依赖运行时通过 uvicorn 启动。它还提供 OpenClaw 云插件,以及供 Hermes Agent 和 OpenClaw 使用的本地插件;本地插件使用 SQLite、FTS5 和向量检索。适合需要跨会话保留用户信息、任务结果或共享记忆的应用团队,但采用前需接受云端 API 密钥管理,或自行运维图数据库和向量数据库。
云端模式中,应用向 https://memos.memtensor.cn/api/openmem/v1/add/message 提交 user_id、conversation_id 与 messages,再调用 /search/memory 以 query 和 user_id 搜索记忆。自托管模式先调用 /product/create_cube 创建 memory cube,然后调用 /product/add 写入 messages、writable_cube_ids 与 async_mode,最后调用 /product/search,以 readable_cube_ids 限定可读记忆范围并返回检索结果。MemScheduler 可异步执行记忆操作;系统还声明支持通过自然语言反馈纠正、补充或替换既有记忆。OpenClaw 云插件会在每次 agent run 前召回 MemOS Cloud 中的记忆,并在运行结束后保存新消息;本地插件则在设备上以 SQLite 持久化数据,并进行 FTS5 加向量的混合检索。
- 构建客服应用的团队,可按 user_id 保存历史工单与对话,并在新请求中检索该用户的相关记忆。
- 部署多智能体工作流的开发者,可用 memory cube 为不同用户、项目或智能体隔离记忆,并按 readable_cube_ids 选择共享范围。
- 希望自行掌控服务部署的工程团队,可在自己的基础设施上运行 MemOS API、Neo4j 与 Qdrant。
- 使用 OpenClaw 且不想维护后端基础设施的用户,可安装云插件,在每次运行前后自动读取和写回记忆。
- 使用 Hermes Agent 或 OpenClaw、且要求数据留在设备上的个人用户,可部署本地插件并使用 SQLite 本地存储。
这个 Agent 有哪些优点和局限?
- 同一套 API 覆盖新增、检索、编辑和删除记忆,并将记忆设计为可检查、可编辑的图结构。
- 自托管 REST 服务的部署边界明确:Docker 组合启动 MemOS API、Neo4j 与 Qdrant。
- 同时覆盖托管云端、私有部署、OpenClaw 云插件和 SQLite 本地插件四种交付方式。
- 本地插件将 FTS5 关键词检索与向量检索结合,并提供多智能体协作与分层技能演化能力。
- 自托管运行依赖 Neo4j 和 Qdrant;非 Docker 部署还要求这些服务预先就绪。
- 云端接入要求申请并保管 MemOS API key,且云端数据位于 MemOS Cloud。
- 本地插件仅明确支持已安装的 OpenClaw 或 Hermes,并依赖 Node.js。
- 所给信息未列出 MCP 端点、MCP 配置方法或已验证的模型提供商适配清单。
如何安装或部署这个 Agent?
自托管 Docker:
git clone https://github.com/MemTensor/MemOS.git
cd MemOS
cp docker/.env.example .env
cd docker
docker compose up在 .env 中填写所需 API keys;服务地址为 http://localhost:8000。非 Docker 方式要求 Neo4j 和 Qdrant 已运行:
cd MemOS/src
uvicorn memos.api.server_api:app --host 0.0.0.0 --port 8000 --workers 1云端方式需在 MemOS dashboard 创建以 mpg- 开头的 API key,并仅在服务端保存。OpenClaw 云插件可执行:
openclaw plugins install @memtensor/memos-cloud-openclaw-plugin@latest
openclaw gateway restart本地插件需要 Node.js 以及已安装的 OpenClaw 或 Hermes。
如何使用这个 Agent?
自托管服务启动后,先向 http://localhost:8000/product/create_cube POST 包含 cube_name、owner_id 和 cube_id 的 JSON;再向 /product/add POST 包含 user_id、writable_cube_ids、messages 和 async_mode 的 JSON;随后向 /product/search POST 包含 query、user_id 和 readable_cube_ids 的 JSON。云端首次调用时,以 Authorization: Token mpg-... 和 Content-Type: application/json 请求 /api/openmem/v1/add/message;之后调用 /api/openmem/v1/search/memory,并传入 query 与 user_id。