# Openmemory Plus

> 🧠 AI Agent Memory Management Framework - Dual-layer memory architecture with smart classification and automatic extraction

- **Type:** MCP server
- **Install:** `agentstack add mcp-alenryuichi-openmemory-plus`
- **Verified:** Yes — security-reviewed for prompt injection and unsafe behavior
- **Seller:** [Alenryuichi](https://agentstack.voostack.com/s/alenryuichi)
- **Installs:** 0
- **Category:** [AI & ML](https://agentstack.voostack.com/c/ai-and-ml)
- **Latest version:** 0.1.0
- **License:** MIT
- **Upstream author:** [Alenryuichi](https://github.com/Alenryuichi)
- **Source:** https://github.com/Alenryuichi/openmemory-plus

## Install

```sh
agentstack add mcp-alenryuichi-openmemory-plus
```

Requires the [AgentStack CLI](https://agentstack.voostack.com/docs/cli). Works with Claude Code, Cursor, and any MCP-compatible agent.

## About

xMemory 四层记忆架构 · 智能分类 · 自动提取 · 多 IDE 支持

  🇨🇳 中文 | 🇺🇸 English

  
    
  
  
    
  
  
    
  
  
    
  

  快速开始 •
  特性 •
  架构 •
  支持的 IDE •
  文档

---

## 🎯 简介

> **厌倦了每次切换 AI 工具都要重复自我介绍？**
>
> Cursor 不知道你在 Claude 里说过喜欢 TypeScript，Augment 不记得你昨天的技术决策...
>
> **OpenMemory Plus 让所有 AI Agent 共享同一份记忆。**

**OpenMemory Plus** 是一个为 AI Agent 设计的统一记忆管理框架，采用 **xMemory 四层记忆架构**：

- **L3 Theme** — 主题聚类层，自动归纳高层概念
- **L2 Semantic** — 语义记忆层，基于 BGE-M3 向量检索
- **L1 Episode** — 情节记忆层，保存对话上下文
- **L0 Message** — 原始消息层

```bash
# 5 分钟安装，终结 AI 失忆症
npx openmemory-plus install
```

### 📸 效果展示

  
    
      
      自动记忆提取执行
    
    
      
      记忆提取结果
    
  

---

## 💡 为什么需要 OpenMemory Plus？

### 痛点场景

你是否遇到过这些问题？

| 😤 痛点 | 📖 场景描述 |
|--------|------------|
| **多 CLI 记忆割裂** | 同时用 Gemini、Augment、Claude、Cursor，每个都是独立记忆，互不相通 |
| **Agent 失忆症** | 每次新对话，Agent 都忘记你是谁、项目在哪、上次做了什么 |
| **重复自我介绍** | 切换 CLI 后又要告诉 Agent：我喜欢 TypeScript、用 pnpm、偏好函数式... |
| **配置碎片化** | 部署 URL 在 Slack，API Key 在笔记，路径在脑子里 |
| **上下文丢失** | 昨天在 Claude 讨论的技术决策，今天在 Augment 完全不记得 |

### OpenMemory Plus 如何解决？

**🔗 多 CLI 统一记忆层**

```
┌─────────────────────────────────────────────────────────────┐
│                    没有 OpenMemory Plus                     │
├─────────────────────────────────────────────────────────────┤
│                                                             │
│  ┌─────────┐   ┌─────────┐   ┌─────────┐   ┌─────────┐     │
│  │ Gemini  │   │ Augment │   │ Claude  │   │ Cursor  │     │
│  │ CLI     │   │ Agent   │   │ Code    │   │ Agent   │     │
│  ├─────────┤   ├─────────┤   ├─────────┤   ├─────────┤     │
│  │ 记忆 A  │   │ 记忆 B  │   │ 记忆 C  │   │ 记忆 D  │     │
│  │ (独立)  │   │ (独立)  │   │ (独立)  │   │ (独立)  │     │
│  └─────────┘   └─────────┘   └─────────┘   └─────────┘     │
│       ❌ 互不相通，每个都要重复告知偏好和上下文              │
│                                                             │
└─────────────────────────────────────────────────────────────┘
                            ↓
┌─────────────────────────────────────────────────────────────┐
│                 使用 OpenMemory Plus                        │
├─────────────────────────────────────────────────────────────┤
│                                                             │
│  ┌─────────┐   ┌─────────┐   ┌─────────┐   ┌─────────┐     │
│  │ Gemini  │   │ Augment │   │ Claude  │   │ Cursor  │     │
│  │ CLI     │   │ Agent   │   │ Code    │   │ Agent   │     │
│  └────┬────┘   └────┬────┘   └────┬────┘   └────┬────┘     │
│       │             │             │             │           │
│       └─────────────┴──────┬──────┴─────────────┘           │
│                            │                                │
│                    ┌───────▼───────┐                        │
│                    │  OpenMemory   │                        │
│                    │  Plus 统一层  │                        │
│                    ├───────────────┤                        │
│                    │ • 用户偏好    │                        │
│                    │ • 技术栈      │                        │
│                    │ • 项目配置    │                        │
│                    │ • 历史决策    │                        │
│                    └───────────────┘                        │
│       ✅ 一处记忆，处处可用。切换 CLI 无缝衔接              │
│                                                             │
└─────────────────────────────────────────────────────────────┘
```

**💬 实际对话对比**

```
┌─────────────────────────────────────────────────────────────┐
│  [Gemini CLI] 早上                                          │
│  用户: 我喜欢用 TypeScript 和 pnpm                          │
│  Gemini: 好的，已记住你的偏好 ✅                            │
├─────────────────────────────────────────────────────────────┤
│  [Augment] 下午 - 切换 CLI                                  │
│  用户: 帮我初始化一个新项目                                 │
│  Augment: 好的！根据你的偏好，我用 TypeScript + pnpm 初始化 │
│           (自动读取了 Gemini 存储的偏好) ✅                 │
├─────────────────────────────────────────────────────────────┤
│  [Claude Code] 晚上 - 再次切换                              │
│  用户: 检查一下代码风格                                     │
│  Claude: 我看到你偏好函数式风格，检查中...                  │
│          (所有 CLI 共享同一份记忆) ✅                       │
└─────────────────────────────────────────────────────────────┘
```

---

## 🎯 适用场景

### 👤 适合谁用？

| 用户类型 | 使用场景 |
|----------|----------|
| **独立开发者** | 多项目开发，希望 Agent 记住每个项目的配置和上下文 |
| **全栈工程师** | 频繁切换前后端项目，需要 Agent 记住技术栈偏好 |
| **AI 工具重度用户** | 同时使用 Cursor、Claude、Augment，希望记忆互通 |
| **团队 Tech Lead** | 希望项目配置版本化，新成员 Agent 自动获取上下文 |

### 📋 典型用例

🔧 用例 1: 项目配置管理

**场景**: 你有 5 个项目，每个都有不同的部署配置

**没有 OpenMemory Plus**:
- 每次都要告诉 Agent 项目路径
- 每次都要提供部署 URL
- 每次都要解释项目结构

**使用 OpenMemory Plus**:
```markdown

## 部署配置
- Vercel URL: https://my-app.vercel.app
- Project ID: prj_xxx

## 项目路径
- Root: /Users/me/projects/my-app
- Src: ./src
- Tests: ./tests
```
Agent 自动读取，无需重复说明。

🎨 用例 2: 跨项目偏好同步

**场景**: 你喜欢用 TypeScript、Tailwind、pnpm

**没有 OpenMemory Plus**:
- 每个新项目都要告诉 Agent 你的偏好
- 切换 IDE 后偏好丢失

**使用 OpenMemory Plus**:
```
openmemory (用户级，跨项目共享):
├── "用户偏好: 使用 TypeScript 而非 JavaScript"
├── "用户偏好: 使用 pnpm 而非 npm"
├── "用户偏好: 使用 Tailwind CSS"
└── "用户技能: 熟悉 React, Next.js, Node.js"
```
任何项目、任何 IDE，Agent 都知道你的偏好。

📝 用例 3: 技术决策追踪

**场景**: 团队讨论后决定使用 PostgreSQL 而非 MongoDB

**没有 OpenMemory Plus**:
- 决策记录在 Slack/Notion，Agent 不知道
- 下次 Agent 可能建议用 MongoDB

**使用 OpenMemory Plus**:
```markdown

## 技术决策

### 数据库选型 (2026-02-01)
- **选择**: PostgreSQL
- **备选**: MongoDB, MySQL
- **原因**: 需要复杂查询和事务支持
```
Agent 记住决策，不会重复建议已否决的方案。

🔄 用例 4: 多 CLI 记忆共享 (核心场景)

**场景**: 你同时使用 Gemini CLI、Augment、Claude Code、Cursor

**没有 OpenMemory Plus**:
```
😤 每天的痛苦循环：

[早上 - Gemini CLI]
用户: 我喜欢 TypeScript，用 pnpm
Gemini: 好的！

[中午 - 切换到 Augment]
用户: 帮我创建组件
Augment: 请问你用 JavaScript 还是 TypeScript？  ← 又要说一遍
用户: TypeScript...
Augment: 用 npm 还是 yarn？  ← 又又要说一遍
用户: pnpm...  😤

[下午 - 切换到 Claude Code]
Claude: 你好！请问你的技术栈偏好是？  ← 又又又要说一遍
用户: ...... 😭
```

**使用 OpenMemory Plus**:
```
✅ 一次告知，处处生效：

[早上 - Gemini CLI]
用户: 我喜欢 TypeScript，用 pnpm
Gemini: 好的，已记住！ → 存入 openmemory

[中午 - 切换到 Augment]
用户: 帮我创建组件
Augment: 好的！用 TypeScript + pnpm 创建中... ← 自动读取
         (我知道你的偏好 😊)

[下午 - 切换到 Claude Code]
用户: 检查代码风格
Claude: 根据你的 TypeScript 偏好检查中... ← 自动读取
        发现 3 处可优化 ✅

[晚上 - 切换到 Cursor]
Cursor: 我看到你今天在其他 CLI 创建了新组件，
        需要我帮你写测试吗？ ← 甚至知道你今天做了什么
```

**共享的记忆内容**:
```yaml
# openmemory (所有 CLI 共享)
用户偏好:
  - 语言: TypeScript
  - 包管理器: pnpm
  - 框架: React, Next.js
  - 风格: 函数式编程

用户技能:
  - 熟悉: Node.js, Python
  - 学习中: Rust

今日上下文:
  - 在 Gemini 设置了偏好
  - 在 Augment 创建了 Button 组件
  - 在 Claude 优化了代码风格
```

---

## 🚀 快速开始

### 一键安装

```bash
npx openmemory-plus install
```

安装向导会自动引导你：

1. ✅ 检测系统依赖 (Docker, Qdrant, Ollama, BGE-M3)
2. ✅ **Docker Compose 一键部署** (推荐) 或原生安装
3. ✅ 选择 IDE 类型
4. ✅ 初始化项目配置
5. ✅ 显示下一步指引

### 🐳 Docker Compose 一键部署 (推荐)

**只需安装 Docker，其他依赖自动处理！**

```bash
# 方式 1: 安装时自动检测并使用 Docker Compose
npx openmemory-plus install

# 方式 2: 显式使用 Docker Compose 模式
npx openmemory-plus install --compose

# 方式 3: 手动管理依赖服务
omp deps init      # 初始化配置
omp deps up        # 启动服务 (Qdrant + Ollama + BGE-M3)
omp deps status    # 查看状态
omp deps down      # 停止服务
```

**优势：**
- 🎯 只需安装 Docker 一个依赖
- ⚡ 一键启动所有服务
- 📦 BGE-M3 模型自动下载
- 💾 数据持久化，重启不丢失

### 基本用法

安装完成后，在你的 AI Agent 对话中使用：

```
/memory              # 显示记忆状态 + 快速菜单
/mem search   # 搜索记忆
/mem sync            # 同步并检测冲突
/mem clean           # 清理过时记忆
```

### 系统要求

| 依赖 | 版本 | 说明 |
|------|------|------|
| Node.js | >= 18.0.0 | 运行 CLI |
| Docker | 最新版 | **唯一必需依赖** (Docker Compose 模式) |
| Ollama | 最新版 | 运行 BGE-M3 嵌入模型 (原生模式需要) |

---

## ✨ 特性

### 核心能力

- 🧠 **xMemory 四层架构** — L3 Theme → L2 Semantic → L1 Episode → L0 Message
- 🎯 **智能分类** — 自动判断信息应存储在项目还是用户记忆
- 🔍 **语义搜索** — 基于 BGE-M3 的多语言向量检索 + 主题层聚类
- ⚡ **事件驱动提取** — 对话结束时自动触发记忆提取 Skill
- 🔐 **敏感信息过滤** — 自动识别并阻止存储 API Key、密码等
- 🎯 **Top-down 检索** — 从主题层开始，自适应展开到语义层

### 🤖 多 LLM 支持 NEW

支持多种 LLM Provider 进行记忆分类：

| Provider | 模型 | 特点 |
|----------|------|------|
| **DeepSeek** | deepseek-chat | 🔥 推荐，性价比高 |
| **MiniMax** | abab6.5s-chat | 中文优化 |
| **ZhiPu** | glm-4-flash | 国产大模型 |
| **Qwen** | qwen-turbo | 阿里云 |
| **OpenAI** | gpt-4o-mini | 国际标准 |
| **Ollama** | 本地模型 | 离线可用 |

### 🧠 智能记忆管理

- 📊 **多维度分类** — 三维度分类体系 (Scope/Confidence/Temporality)，精准路由每条记忆
- 🧹 **ROT 智能过滤** — 自动识别冗余、过时、琐碎信息，保持记忆库精简
- ⏰ **Ebbinghaus 衰减** — 基于遗忘曲线的记忆生命周期管理，自动清理陈旧记忆
- 🔀 **冲突检测** — 自动发现双层数据矛盾，智能提示解决方案
- 📈 **健康度监控** — 四维度加权评分，实时掌握记忆系统状态

> 📖 **技术详情**: 参见 [记忆系统架构文档](docs/memory-system.md)

### 进阶功能

- 📊 **降级策略** — MCP 不可用时自动降级到本地存储
- 🔗 **记忆整合** — 语义聚类合并碎片化记忆
- 📉 **质量指标** — 可视化面板展示记忆健康状态
- 🔧 **渐进式配置** — 已有配置文件时追加而非覆盖

---

## 🏗️ 架构

### xMemory 四层记忆架构

```
┌─────────────────────────────────────────────────────────────┐
│                 xMemory 4-Layer Architecture                │
├─────────────────────────────────────────────────────────────┤
│                                                             │
│  ┌─────────────────────────────────────────────────────┐   │
│  │  L3 Theme (主题层)                                   │   │
│  │  ├── 自动聚类相似语义记忆                            │   │
│  │  ├── 主题吸附 (attachThreshold: 0.62)               │   │
│  │  ├── 主题分裂 (maxThemeSize: 12)                    │   │
│  │  └── 主题合并 (mergeThreshold: 0.78)                │   │
│  └─────────────────────────────────────────────────────┘   │
│                            ↑                                │
│  ┌─────────────────────────────────────────────────────┐   │
│  │  L2 Semantic (语义层) - Qdrant 向量数据库           │   │
│  │  └── BGE-M3 多语言 Embedding                        │   │
│  └─────────────────────────────────────────────────────┘   │
│                            ↑                                │
│  ┌─────────────────────────────────────────────────────┐   │
│  │  L1 Episode (情节层) - 对话上下文                   │   │
│  └─────────────────────────────────────────────────────┘   │
│                            ↑                                │
│  ┌─────────────────────────────────────────────────────┐   │
│  │  L0 Message (消息层) - 原始对话                     │   │
│  └─────────────────────────────────────────────────────┘   │
│                                                             │
└─────────────────────────────────────────────────────────────┘
```

### 存储分层

```
┌─────────────────────────────────────────────────────────────┐
│                    OpenMemory Plus                          │
├─────────────────────────────────────────────────────────────┤
│                                                             │
│  ┌─────────────┐    ┌─────────────┐    ┌─────────────┐     │
│  │   /memory   │    │  /mem xxx   │    │  自动提取   │     │
│  │   (入口)    │    │  (子命令)   │    │  (Skill)    │     │
│  └──────┬──────┘    └──────┬──────┘    └──────┬──────┘     │
│         └──────────────────┼──────────────────┘             │
│                            ↓                                │
│  ┌─────────────────────────────────────────────────────┐   │
│  │              Memory Router (智能分类)                │   │
│  └─────────────────────────────────────────────────────┘   │
│                            │                                │
│         ┌──────────────────┼──────────────────┐            │
│         ↓                                     ↓            │
│  ┌─────────────────┐              ┌─────────────────┐      │
│  │ _omp/memory/   │              │   openmemory    │      │
│  │   (项目级)      │              │   (用户级)      │      │
│  ├─────────────────┤              ├─────────────────┤      │
│  │ • project.yaml  │              │ • L3 主题层     │      │
│  │ • decisions.yaml│              │ • L2 语义层     │      │
│  │ • themes/       │              │ • L1 情节层     │      │
│  │ • Git 版本控制  │              │ • MCP 协议      │      │
│  └─────────────────┘              └─────────────────┘      │
│                                                             │
└─────────────────────────────────────────────────────────────┘
```

### 分类规则

| 信息类型 | 存储位置 | 层级 | 示例 |
|----------|----------|------|------|
| 项目配置 | `_omp/memory/*.md` | - | 部署 URL、环境变量、路径 |
| 技术决策 | `_omp/memory/techContext.md` | - | 框架选择、架构设计 |
| 主题聚类 | `_omp/memory/themes/` | L3 | 自动生成的主题索引 |
| 用户偏好 | `openmemory` (MCP) | L2 | 语言偏好、代码风格 |
| 用户技能 | `openmemory` (MCP) | L2 | 熟悉的技术栈、经验 |

### xMemory 检索流程

```
查询输入 → L3 主题层匹配 → 分数 > 0.75? → 展开到 L2 语义层 → 返回结果
                ↓                   ↓
           KNN 邻居搜索        直接返回主题
```

> 💡 **注意**: 安装后，项目级记忆存储在 `_omp/memory/` 目录下，该目录会被添加到 Git 版本控制。

---

## 🖥️ 支持的 IDE

  
    
      
      Augment
      ✅ 完整支持
    
    
      
      Claude Code
      ✅ 完整支持
    
    
      
      Cursor
      ✅ 完整支持
    
    
      
      Gemini CLI
      ✅ 完整支持
    
  

---

## 📦 CLI 命令

### 安装命令

```bash
# 交互式安装 (推荐)
npx openmemory-plus install

# 使用 Docker Compose 一键部署 (推荐)
npx openmemory-plus install --compose

# 静默安装
npx openmemory-plus install -y

# 指定 IDE
npx openmemory-plus install --ide augment

# 指定 LLM Provider (用于记忆分类)
npx openmemory-plus install --llm deepseek

# 仅配置项目，跳过依赖检测
npx openmemory-plus install --skip-deps

# 显示 MCP 配置
npx openmemory-plus install --show-mcp
```

### 支持的 LLM Provider

| Provider | 命令 | 环境变量 |
|----------|------|----------|
| DeepSeek | `--llm deepseek` | `DEEPSEEK_API_KEY` |
| MiniMax | `--llm minimax` | `MINIMAX_API_KEY` |
| ZhiPu | `--llm zhipu` | `ZHIPU_API_KEY` |
| Qwen | `--llm qwen` | `DASHSCOPE_API_KEY` |
| OpenAI | `--llm openai` | `OPENAI_API_KEY` |
| Ollama | `--llm ollama` | (本地，无需 API Key) |

### 🐳 依赖服务管理 (Docker Compose)

```bash
# 初始化 Docker Compose 配置
omp deps init

# 启动所有依赖服务 (Qdrant + Ollama + BGE-M3)
omp deps up

# 启动前拉取最新镜像
omp deps up --pull

# 停止所有服务
omp deps down

# 查看服务状态
omp deps status

# 查看服务日志
omp deps logs              # 所有服务
omp deps logs ollama       # 指定服务
omp deps logs -f           # 持续输出

# 手动下载 BGE-M3 模型
omp deps pull-model
```

### 诊断命令

```bash
# 检查系统状态
npx openmemory-plus status

# 诊断问题
npx openmemory-plus doctor

# 自动修复
npx openmemory-plus doctor --fix
```

### Agent 内置命令

| 命令 | 说明 |
|------|------|
| `/memory` | 显示快速状态 + 子命令菜单 |
| `/mem status` | 详细记忆状态 |
| `/mem search {query}` | 语义搜索记忆 (默认 L2 语义层) |
| `/mem search {query} --level theme` | 🆕 主题层搜索 (L3) |
| `/mem search {query} --level theme --no-expand` | 🆕 仅主题层，不展开 |
| `/mem store` | 手动存储记忆 |
| `/mem sync` | 检测并解决冲突 |
| `/mem clean` | 清理 ROT 记忆 |
| `/mem decay` | 时间衰减分析 |
| `/mem graph` | 知识图谱可视化 |
| `/mem themes` | 🆕 查看主题聚类状态 |

---

## 📁 项目结构

```
openmemory-plus/
├── cli/                   # CLI 工具源码
│   ├── src/
│   │   ├── commands/      # install, status, doctor
│   │   └── lib/           # 核心库
│   └── templates/         # 模板文件
│       └── shared/        # 共享模板
│           └── _omp/      # 核心目录模板
├── docs/                  # 文档
│   └── architecture.md    # 架构设计
├── AGENTS.md              # AI Agent 配置入口
└── README.md              # 本文件

# 安装后在你的项目中生成 (以 Augment 为例):
your-project/
├── _omp/                      # OpenMemory Plus 核心目录 (所有 IDE 共享)
│   ├── AGENTS.md              # 完整 Agent 规则文件
│   ├── memory/                # 项目级记忆存储
│   │   ├── projectbrief.md    # 项目概述
│   │   ├── productContext.md  # 产品需求
│   │   ├── techContext.md     # 技术栈
│   │   ├── activeContext.md   # 当前会话上下文
│   │   ├── systemPatterns.md  # 模式与规范
│   │   ├── decisions.yaml     # 架构决策日志
│   │   └── progress.md        # 任务进度
│   ├── commands/              # Agent 命令
│   │   └── memory.md          # 主命令入口
│   ├── workflows/             # 工作流
│   │   └── memory/            # 记忆管理工作流 (7 步骤)
│   └── skills/                # Agent Skills
│       └── memory-extraction/ # 记忆提取 Skill (自动触发)
│
├── AGENTS.md                  # 入口文件 (引用 _omp/AGENTS.md)
└── .augment/                  # IDE 特定目录
    ├── commands/              # 命令入口 (链接到 _omp)
    └── skills/                # Skills (链接到 _omp)
```

---

## 🔧 技术栈

| 组件 | 技术 | 说明 |
|------|------|------|
| CLI | TypeScript + Commander | 命令行工具 |
| 向量数据库 | Qdrant | 存储用户记忆向量 |
| Embedding | BGE-M3 (via Ollama) | 多语言文本嵌入 |
| 协议 | MCP (Model Context Protocol)

…

## Source & license

This open-source MCP server is cataloged on AgentStack and links to its original source — we do not rehost the code.

- **Author:** [Alenryuichi](https://github.com/Alenryuichi)
- **Source:** [Alenryuichi/openmemory-plus](https://github.com/Alenryuichi/openmemory-plus)
- **License:** MIT

Install and usage instructions live in the source repository linked above.

## Pricing

- **Free** — Free

## Security capabilities

Automated source analysis of v0.1.0 — what this tool can access:

- **Network access:** no
- **Filesystem access:** no
- **Shell / process execution:** no
- **Environment & secrets:** yes
- **Dynamic code execution:** no

*"Yes" means the capability is present in the source — more access means more to trust, not that it is unsafe.*


## Versions

- **0.1.0** — security scan: passed — Imported from the upstream source.

## Links

- Listing page: https://agentstack.voostack.com/l/mcp-alenryuichi-openmemory-plus
- Seller: https://agentstack.voostack.com/s/alenryuichi
- Browse the marketplace: https://agentstack.voostack.com/browse

---
Listed on AgentStack — the marketplace for AI agent skills and MCP servers. Every listing is security-reviewed. Creators keep 70%.
