介绍
# NeuralMemory — Associative Memory for AI Agents
一个受生物学启发的记忆系统,使用扩散激活而非关键词/向量搜索。记忆形成一个神经图,其中神经元通过 20 种类型的突触连接。频繁共同访问的记忆会加强其连接(赫布学习)。陈旧的记忆会自然衰减。矛盾会被自动检测。
**为什么不直接用向量搜索?** 向量搜索能找到与查询相似的文档。NeuralMemory 通过图遍历找到*概念相关*的记忆——即使在没有关键词或嵌入重叠的情况下。“我们在 auth 方面做了什么决定?”会同时激活时间 + 实体 + 概念神经元并找到交集。
## 设置
### 1. 安装 NeuralMemory
```bash pip install neural-memory nmem init ```
这会在 `~/.neuralmemory/` 下创建一个默认的大脑,并自动配置 MCP。
### 2. 为 OpenClaw 配置 MCP
添加到您的 OpenClaw MCP 配置(`~/.openclaw/mcp.json` 或项目 `openclaw.json`):
```json { "mcpServers": { "neural-memory": { "command": "python3", "args": ["-m", "neural_memory.mcp"], "env": { "NEURALMEMORY_BRAIN": "default" } } } } ```
### 3. 验证
```bash nmem stats ```
您应该看到大脑统计信息(神经元、突触、纤维)。
## 工具参考
### 核心记忆工具
| 工具 | 用途 | 何时使用 | |------|---------|-------------| | `nmem_remember` | 存储记忆 | 在决策、错误、事实、洞察、用户偏好之后 | | `nmem_recall` | 查询记忆 | 在任务之前,当用户提及过去的上下文,“你是否记得……” | | `nmem_context` | 获取最近的记忆 | 会话开始时,注入新鲜的上下文 | | `nmem_todo` | 30天有效期的快速 TODO | 任务跟踪 |
### 智能工具
| 工具 | 用途 | 何时使用 | |------|---------|-------------| | `nmem_auto` | 从文本中自动提取记忆 | 在重要对话之后——自动捕获决策、错误、TODO | | `nmem_recall` (depth=3) | 深度联想召回 | 需要跨领域连接的复杂问题 | | `nmem_habits` | 工作流模式建议 | 当用户重复相似的操作序列时 |
### 管理工具
| 工具 | 用途 | 何时使用 | |------|---------|-------------| | `nmem_health` | 大脑健康诊断 | 定期检查,在分享大脑之前 | | `nmem_stats` | 大脑统计 | 记忆数量的快速概览 | | `nmem_version` | 大脑快照和回滚 | 在有风险的操作之前,版本检查点 | | `nmem_transplant` | 在大脑之间传输记忆 | 跨项目知识共享 |
## 工作流
### 会话开始时 1. 调用 `nmem_context` 将最近的记忆注入您的感知中 2. 如果用户提及特定主题,使用该主题调用 `nmem_recall`
### 对话期间 3. 做出决定时:`nmem_remember`,设置 type="decision" 4. 发生错误时:`nmem_remember`,设置 type="error" 5. 当用户陈述偏好时:`nmem_remember`,设置 type="preference" 6. 当被问及过去的事件时:使用适当的深度调用 `nmem_recall`
### 会话结束时 7. 对重要的对话片段调用 `nmem_auto`,设置 action="process" 8. 这将自动提取事实、决策、错误和 TODO
## 示例
### 记忆一个决定 ``` nmem_remember( content="Use PostgreSQL for production, SQLite for development", type="decision", tags=["database", "infrastructure"], priority=8 ) ```
### 使用扩散激活进行召回 ``` nmem_recall( query="database configuration for production", depth=1, max_tokens=500 ) ``` 返回通过图遍历找到的记忆,而非关键词匹配。相关的记忆(例如,“部署使用 Docker 并通过 pg_dump 备份”)即使没有共享的关键词也会浮现。
### 追踪因果链 ``` nmem_recall( query="why did the deployment fail last week?", depth=2 ) ``` 遵循 CAUSED_BY 和 LEADS_TO 突触来追踪因果链。
### 从对话中自动捕获 ``` nmem_auto( action="process", text="We decided to switch from REST to GraphQL because the frontend needs flexible queries. The migration will take 2 sprints. TODO: update API docs." ) ``` 自动提取:1 个决策,1 个事实,1 个 TODO。
## 主要特性
- **零 LLM 依赖** — 纯算法:正则、图遍历、赫布学习 - **扩散激活** — 通过神经图进行联想召回,而非关键词/向量搜索 - **20 种突触类型** — 时间(BEFORE/AFTER)、因果(CAUSED_BY/LEADS_TO)、语义(IS_A/HAS_PROPERTY)、情感(FELT/EVOKES)、冲突(CONTRADICTS) - **记忆生命周期** — 短期 → 工作 → 情节 → 语义,伴随艾宾浩斯衰减 - **矛盾检测** — 自动检测冲突的记忆,降低过时记忆的优先级 - **赫布学习** — “一起激发的神经元连在一起” —— 使用改善记忆 - **时序推理** — 因果链遍历、事件序列、时间范围查询 - **大脑版本控制** — 快照、回滚、大脑状态差异对比 - **大脑移植** — 在大脑之间传输经过筛选的知识 - **越南语 + 英语** — 提取和情感分析的完整双语支持
## 深度级别
| 深度 | 名称 | 速度 | 用例 | |-------|------|-------|----------| | 0 | Instant | <10ms | 快速事实、最近的上下文 | | 1 | Context | ~50ms | 标准召回(默认) | | 2 | Habit | ~200ms | 模式匹配、工作流建议 | | 3 | Deep | ~500ms | 跨领域关联、因果链 |
## 注意事项
- 记忆本地存储在 SQLite 中,位于 `~/.neuralmemory/brains/<brain>.db` - 没有数据发送到外部服务(除非配置了可选的嵌入提供商) - 大脑隔离:每个大脑是独立的,没有交叉污染 - `nmem_remember` 返回 fiber_id 用于引用跟踪 - 优先级范围:0(琐碎)到 10(关键),默认为 5 - 记忆类型:fact, decision, preference, todo, insight, context, instruction, error, workflow, reference