Token导航 LogoToken导航TokenDH.com
Context Memory logo
搜索检索未说明官方级别未说明来源级核验

Context Memory

MCP Server

为Claude Code提供跨会话持久化记忆服务,支持源代码变更检测和智能检索。

工具数

24

提示词数

0

GitHub Stars

0

资源数

0
持久化存储RustClaudeClaude

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

作者 / 组织

praneethpuligundla

提供方

praneethpuligundla

最后核验

2026/5/17 20:20

快速接入

先看主来源和安装命令,再打开仓库或文档;下面只保留这个条目的关键接入事实。

详细介绍

上下文记忆

Claude Code的上下文防腐内存MCP服务器。为Claude提供跨会话的持久内存,并在源代码更改时自动检测过时情况。

特性

磁心存储器

  • 持久化存储 -通过FTS5全文搜索,事实在SQLite的会话中得以保留
  • 源追踪 -将事实链接到源文件(file:line);检测代码更改何时使其无效
  • 智能检索 -时间加权搜索将最近的高置信度事实排名靠前
  • 项目隔离 -事实自动作用域到git存储库;支持跨项目查询

智能

  • 矛盾检测 -当新事实与现有事实冲突时自动发出警告
  • 会话跟踪 -知道在当前对话中学到了什么
  • 事实版本控制 -跟踪事实随时间变化的历史
  • 主题提取 -使用标签和关键字从内容中自动提取主题

内存卫生

  • 信心衰退 -随着时间的推移,未使用的事实会失去信心
  • 增强信心 -经常访问的事实会获得信心(每次访问增加2%)
  • 汽车维修 -光衰在服务器启动时运行
  • 修剪 -删除或存档旧的、低置信度的事实
  • 整合 -查找并合并相似/重复的事实

关系

  • 事实链接 -将事实与类型化关系(依赖、矛盾、阐述等)联系起来
  • 取代 -跟踪事实何时取代旧版本
  • 类别摘要 -查看按类别分组的事实

建筑

守护进程/客户端模型

Context Memory使用守护进程架构来支持并发会话。多个Claude Code会话可以安全地共享同一内存数据库。

┌──────────────────┐   ┌──────────────────┐   ┌──────────────────┐
│  Claude Code #1  │   │  Claude Code #2  │   │  Claude Code #3  │
│                  │   │                  │   │                  │
│  MCP (stdio)     │   │  MCP (stdio)     │   │  MCP (stdio)     │
└────────┬─────────┘   └────────┬─────────┘   └────────┬─────────┘
         │                      │                      │
         ▼                      ▼                      ▼
┌──────────────────┐   ┌──────────────────┐   ┌──────────────────┐
│  Client Process  │   │  Client Process  │   │  Client Process  │
│  (stdio bridge)  │   │  (stdio bridge)  │   │  (stdio bridge)  │
└────────┬─────────┘   └────────┬─────────┘   └────────┬─────────┘
         │                      │                      │
         └──────────────────────┼──────────────────────┘
                                │
                    Unix Socket │ (~/.claude/context-memory/daemon.sock)
                                ▼
         ┌──────────────────────────────────────────────────────┐
         │                    Daemon Process                     │
         │                                                       │
         │  ┌─────────────┐ ┌─────────────┐ ┌─────────────┐     │
         │  │ MCP Server  │ │ MCP Server  │ │ MCP Server  │     │
         │  │ (session 1) │ │ (session 2) │ │ (session 3) │     │
         │  └──────┬──────┘ └──────┬──────┘ └──────┬──────┘     │
         │         └───────────────┼───────────────┘            │
         │                         ▼                            │
         │              ┌─────────────────────┐                 │
         │              │   Shared Storage    │                 │
         │              │   (Connection Pool) │                 │
         │              └──────────┬──────────┘                 │
         └─────────────────────────┼────────────────────────────┘
                                   │
                                   ▼
                     ~/.claude/context-memory/memory.db

它是如何工作的:

  1. 客户端模式 (默认):由Claude Code创建,桥接stdio↔ 守护进程套接字
  2. 后台模式 (--daemon):长时间运行的进程接受并发连接
  3. 自动启动:如果未运行,客户端会自动启动守护进程

内部架构

┌────────────────────────────────────────────────────────────────────────────┐
│                         Context Memory Server                               │
│                                                                            │
│  ┌──────────────────────────────────────────────────────────────────────┐  │
│  │                          Tool Router (rmcp)                          │  │
│  │                                                                      │  │
│  │  remember  recall  forget  verify  link  decay  prune  merge  ...   │  │
│  └──────────────────────────────────────────────────────────────────────┘  │
│                                    │                                       │
│                                    ▼                                       │
│  ┌──────────────────────────────────────────────────────────────────────┐  │
│  │                          Tool Handler                                │  │
│  │                                                                      │  │
│  │  • Input validation          • Contradiction detection               │  │
│  │  • Topic extraction          • Session ID injection                  │  │
│  │  • Source hash computation   • Confidence management                 │  │
│  └──────────────────────────────────────────────────────────────────────┘  │
│                                    │                                       │
│                                    ▼                                       │
│  ┌──────────────────────────────────────────────────────────────────────┐  │
│  │                         Storage Layer                                │  │
│  │                                                                      │  │
│  │  ┌─────────────┐  ┌─────────────┐  ┌─────────────┐  ┌────────────┐  │  │
│  │  │   facts     │  │  relations  │  │fact_history │  │ facts_fts  │  │  │
│  │  │             │  │             │  │             │  │  (FTS5)    │  │  │
│  │  │ • content   │  │ • from_id   │  │ • version   │  │            │  │  │
│  │  │ • source    │  │ • to_id     │  │ • content   │  │ Full-text  │  │  │
│  │  │ • confidence│  │ • type      │  │ • changed_at│  │ search     │  │  │
│  │  │ • topics    │  │ • metadata  │  │             │  │ index      │  │  │
│  │  │ • session_id│  │             │  │             │  │            │  │  │
│  │  └─────────────┘  └─────────────┘  └─────────────┘  └────────────┘  │  │
│  │                                                                      │  │
│  │                        SQLite + WAL Mode                             │  │
│  └──────────────────────────────────────────────────────────────────────┘  │
└────────────────────────────────────────────────────────────────────────────┘

数据流

┌─────────────┐     ┌──────────────────┐     ┌─────────────────┐
│  remember   │────▶│ Validate Input   │────▶│ Extract Topics  │
│  (new fact) │     │ Check Length     │     │ from Content    │
└─────────────┘     └──────────────────┘     └─────────────────┘
                                                      │
                    ┌──────────────────┐              ▼
                    │ Check for        │◀─────┌─────────────────┐
                    │ Contradictions   │      │ Compute Source  │
                    │ (topic overlap)  │      │ Hash (SHA256)   │
                    └──────────────────┘      └─────────────────┘
                            │
                            ▼
┌─────────────┐     ┌──────────────────┐     ┌─────────────────┐
│  Return ID  │◀────│ Store in SQLite  │◀────│ Add Session ID  │
│ + Warnings  │     │ + FTS5 Index     │     │ + Project Path  │
└─────────────┘     └──────────────────┘     └─────────────────┘
┌─────────────┐     ┌──────────────────┐     ┌─────────────────┐
│   recall    │────▶│ Sanitize Query   │────▶│ Build SQL with  │
│  (search)   │     │ (FTS5 injection) │     │ Filters         │
└─────────────┘     └──────────────────┘     └─────────────────┘
                                                      │
                    ┌──────────────────┐              ▼
                    │ Boost Confidence │◀─────┌─────────────────┐
                    │ (+2% per access) │      │ Time-Weighted   │
                    └──────────────────┘      │ Scoring         │
                            │                 └─────────────────┘
                            ▼
                    ┌──────────────────┐
                    │ Return Ranked    │
                    │ Facts            │
                    └──────────────────┘

数据模型

Fact
├── id (UUID)
├── content (the fact itself)
├── project_path (git root - for project isolation)
├── session_id (conversation tracking)
├── source (file:line reference)
├── source_content_hash (SHA256 for staleness)
├── confidence (0.0-1.0)
├── importance (critical/high/normal/low)
├── certainty (definite/likely/uncertain/speculative)
├── category (architecture/decision/pattern/bug/todo/...)
├── scope (global/project/branch/task)
├── topics[] (tags)
├── evidence[] (supporting observations)
├── access_count
├── last_accessed
├── stale (boolean)
└── archived (boolean)

Fact History
├── fact_id
├── version
├── content (snapshot)
├── confidence (snapshot)
├── changed_at
└── change_reason

Relations
├── from_id → to_id
├── type (depends_on/contradicts/elaborates/related_to/part_of/supersedes)
└── metadata

安装

先决条件

  • 锈蚀1.70+(用于建筑)
  • 克劳德代码CLI

快速开始

# Clone and build
git clone https://github.com/praneethpuligundla/context-memory
cd context-memory
cargo build --release

# Add to Claude Code MCP config (~/.claude/.mcp.json)
{
  "mcpServers": {
    "context-memory": {
      "command": "/absolute/path/to/context-memory/target/release/context-memory",
      "args": []
    }
  }
}

# Restart Claude Code

验证安装

> What memory tools do you have?

Claude should list: remember, recall, forget, verify, decay, prune, etc.

MCP工具参考

磁心存储器

工具说明关键参数
remember存储事实content, source?, topics?, category?, importance?
recall搜索事实query, all_projects?, session_id?, topics?, category?, min_confidence?, limit?
forget删除事实fact_id
forget_observation删除证据fact_id, observation

验证

工具说明关键参数
verify检查来源是否改变fact_id
get_stale列出过时的事实threshold_hours?
refresh_all批量验证所有-

关系

工具说明关键参数
link连接事实fact_a, fact_b, relation_type, metadata?
unlink断开连接fact_a, fact_b, relation_type
get_related查找相关事实fact_id
find_contradictions检测冲突-

会议和历史

工具说明关键参数
get_session_facts当前/特定会议的事实session_id?, limit?
get_fact_history事实的版本历史fact_id

探索

工具说明关键参数
list_topics列出所有主题-
summarize关于某一主题的事实topic, limit?
get_category_summary按类别分组的事实category?, limit_per_category?
stats内存统计-

内存维护

工具说明关键参数
decay减少旧的信心threshold_days? (30), decay_factor? (0.9)
prune删除未使用的事实days_unused? (90), min_confidence? (0.5), archive? (真)
consolidate查找类似事实similarity_threshold? (0.5)
merge_facts结合两个事实fact_a, fact_b, merged_content?
archive软删除fact_id
unarchive恢复已存档fact_id
get_archived列表已存档limit?

运作原理

时间加权检索

score = confidence × importance_weight × time_decay

where:
  importance_weight = { critical: 4, high: 2, normal: 1, low: 0.5 }
  time_decay = 1 / (1 + days_since_access / 30)

稳定性检测

当事实引用源文件时(例如。, src/auth.rs:42):

  1. 计算存储中文件内容的SHA256哈希值
  2. verify(),重新计算哈希值并进行比较
  3. 将事实标记为 stale: true 如果更改

矛盾检测

存储新事实时:

  1. 查找主题重叠超过50%的现有事实(Jaccard相似性)
  2. 分析否定词的内容(not, never, don't等等)
  3. 检查是否存在相反的值对(true/false, enabled/disabled等等)
  4. 返回警告,但仍存储事实
  5. 自动创建 contradicts 高置信度冲突关系

配置

环境变量

变量默认值描述
CONTEXT_MEMORY_DECAY_DAYS7腐烂前几天不活动
CONTEXT_MEMORY_DECAY_FACTOR0.95衰减倍数(0.95=5%衰减)
CONTEXT_MEMORY_SKIP_MAINTENANCE0设置为“1”跳过启动维护

文件

路径描述
~/.claude/context-memory/memory.dbSQLite数据库
~/.claude/context-memory/daemon.sock客户端Unix套接字↔守护进程IPC
~/.claude/context-memory/daemon.pid守护进程的PID文件

命令行

context-memory          # Run in client mode (default, used by Claude Code)
context-memory --daemon # Run as daemon (auto-started by client if needed)

安全

  • 路径穿越预防 -源路径被规范化
  • FTS5查询消毒 -防止查询注入
  • 输入验证 -所有文本字段的长度限制
  • SQLite安全 -foreign_keys、secure_delete、WAL模式已启用

发展

cargo test          # Run tests
cargo build         # Build debug
cargo build --release  # Build release
RUST_LOG=debug ./target/debug/context-memory  # Run with logging

许可证

麻省理工学院

目录标签

目录标签

持久化存储RustClaude本地部署源代码跟踪智能检索矛盾检测记忆维护

支持客户端

Claude

接入字段

传输方式(transport,传输协议)

未说明

鉴权方式(authType,认证方式)

session

工具数量(toolCount,工具数)

24

资源数量(resourceCount,资源数)

0

提示词数量(promptCount,提示词数)

0

权限和风险

未说明session部署方式未说明

接入前请确认传输方式、认证方式和部署位置,并根据实际工具能力限制访问范围。

安装前确认

不要直接授予不必要的文件、网络或账号权限;先核对安装命令和配置内容。

仍需确认:installCommand

来源信息

继续浏览同类 MCP