AI助手个人记忆系统

MemoVault是一个完全在本地运行的AI助手个人记忆系统,提供短期和长期记忆管理、本地存储以及与多个AI工具的集成。

  • by Blvckjs96
  • Python
  • 本地部署
  • 更新于
在 GitHub 查看 Blvckjs96/MemoVault

使用说明

MemoVault

AI助手的个人存储系统——完全在您的机器上运行,在本地存储所有内容,并通过生命周期挂钩与Claude Code、Cursor、Gemini CLI和Codex集成。

隐私第一。 默认情况下,没有任何东西离开你的机器。记忆存储为本地文件。仪表板轮询您自己的REST API。插件挂钩调用 localhost 只有。


特性

  • STM/LTM架构 --具有衰退的短期会话记忆+具有四维重要性评分的长期记忆
  • BM25+矢量搜索 --关键字(简单)或语义(Qdrant)检索
  • MCP服务器 --一流的Claude Code与15+工具集成
  • 插件挂钩 --Claude Code、Cursor、Gemini CLI、Codex CLI的生命周期挂钩
  • 仪表板用户界面 --实时网络仪表板 http://localhost:8080/ui
  • 代币经济学 --跟踪发现与读取令牌和效率比
  • 完全本地化 --Ollama LLM+本地嵌入+嵌入式Qdrant,零云依赖

安装

来源

git clone https://github.com/your-org/memovault
cd memovault
pip install -e .       # or: uv sync
cp .env.example .env

来自PyPI

pip install memovault

设置

选项A——完全本地(Ollama)

1.安装Olama并拉取模型

# macOS
brew install ollama

# Linux
curl -fsSL https://ollama.com/install.sh | sh

ollama pull llama3.1           # main LLM
ollama pull nomic-embed-text   # embeddings

2.配置 .env

MEMOVAULT_LLM_BACKEND=ollama
MEMOVAULT_OLLAMA_MODEL=llama3.1:latest
MEMOVAULT_OLLAMA_API_BASE=http://localhost:11434

MEMOVAULT_EMBEDDER_BACKEND=ollama
MEMOVAULT_EMBEDDER_OLLAMA_MODEL=nomic-embed-text:latest

# simple = BM25 (no vector DB), vector = Qdrant (semantic search)
MEMOVAULT_MEMORY_BACKEND=simple

MEMOVAULT_DATA_DIR=./memovault_data

3.开始

memovault service start
open http://localhost:8080/ui

选项B-OpenAI

MEMOVAULT_LLM_BACKEND=openai
MEMOVAULT_OPENAI_API_KEY=sk-...
MEMOVAULT_OPENAI_MODEL=gpt-4o-mini

MEMOVAULT_EMBEDDER_BACKEND=openai
MEMOVAULT_EMBEDDER_OPENAI_MODEL=text-embedding-3-small

MEMOVAULT_MEMORY_BACKEND=vector

内存内容被发送到OpenAI的API,以便在使用该后端时进行评分和嵌入。


克劳德代码——MCP集成

添加 ~/.claude/claude.json:

当地(Ollama)

{
  "mcpServers": {
    "memovault": {
      "command": "memovault",
      "args": ["mcp"],
      "env": {
        "MEMOVAULT_LLM_BACKEND": "ollama",
        "MEMOVAULT_OLLAMA_MODEL": "llama3.1:latest"
      }
    }
  }
}

开放人工智能

{
  "mcpServers": {
    "memovault": {
      "command": "memovault",
      "args": ["mcp"],
      "env": {
        "MEMOVAULT_LLM_BACKEND": "openai",
        "MEMOVAULT_OPENAI_API_KEY": "sk-..."
      }
    }
  }
}

插件挂钩

钩子在每次提示之前自动注入内存上下文,并在退出时保存会话摘要。要求REST API正在运行。

快速开始

memovault service start                        # start REST API
memovault plugins install claude-code          # install hooks

所有平台

memovault plugins list                         # show status for all platforms
memovault plugins install claude-code
memovault plugins install cursor
memovault plugins install gemini
memovault plugins install codex

memovault plugins uninstall claude-code        # remove hooks

每个钩子的作用是什么

钩子 触发器 动作
UserPromptSubmit 在每个提示之前 获取最近的会话摘要+相关记忆,作为上下文添加
Stop 工具退出时 总结会话并将其存储到LTM

平台详细信息

克劳德代码 --将钩子写入 ~/.claude/settings.json:

{
  "hooks": {
    "UserPromptSubmit": [{
      "matcher": ".*",
      "command": "memovault hook prompt-submit --api http://localhost:8080"
    }],
    "Stop": [{
      "command": "memovault hook session-end --api http://localhost:8080"
    }]
  }
}

光标 --写 memovault.hooks 配置为游标 settings.json.

Gemini CLI/Codex CLI --添加一个shell包装器函数 ~/.zshrc.快跑 source ~/.zshrc 安装后激活一次。

登录时自动启动服务

# Add to ~/.zshrc or ~/.bash_profile
memovault service start 2>/dev/null

服务管理

memovault service start           # start REST API in background
memovault service start --port 9090
memovault service status
memovault service stop

# Foreground (useful for debugging)
memovault api --host 127.0.0.1 --port 8080

许可证

麻省理工学院