Mem0 Memory Integration
Mem0 adds an intelligent, adaptive memory layer to Clawdbot that automatically learns and recalls user preferences, patterns, and context across all interactions.
Core Workflow
1. Search Before Responding
Before answering user questions, search mem0 for relevant context:
CODEBLOCK0
Use retrieved memories to:
- - Personalize responses
- Remember preferences
- Recall past patterns
- Adapt communication style
2. Store After Interactions
Explicit Storage (when user says "remember this"):
CODEBLOCK1
Conversation Storage (for context learning):
CODEBLOCK2
Available Commands
Search Memories
CODEBLOCK3
Searches semantically across stored memories. Returns relevant memories ranked by relevance.
Add Memory
CODEBLOCK4
Mem0's LLM automatically extracts, deduplicates, and merges related memories.
List All Memories
CODEBLOCK5
Shows all stored memories for the user with IDs and creation dates.
Delete Memories
CODEBLOCK6
What to Store vs Not Store
✅ Store These:
- - Explicit requests: "Remember that I..."
- Preferences: Communication style, format choices
- Personal context: Work info, interests, family (non-sensitive)
- Usage patterns: Frequent requests, timing preferences
- Corrections: When user corrects your mistakes
- Adaptive facts: Current projects, recent interests
❌ Don't Store:
- - Secrets, passwords, API keys
- Temporary context (unless explicitly requested)
- System errors or debug info
- Information already in MEMORY.md (avoid duplication)
Complementing Clawdbot Memory
Clawdbot MEMORY.md (Structured, Deliberate):
- - Permanent facts: Name = Abhay, Location = Singapore
- Reference data: Email, blog URL, Twitter handle
- Structured knowledge: Project details, credentials
Mem0 (Dynamic, Learned):
- - Preferences: "Abhay prefers concise updates"
- Patterns: "Usually asks for bus info at 8:30am"
- Adaptive context: "Currently interested in AI news"
- Behavioral: "Likes direct answers, minimal fluff"
Use both together: Check MEMORY.md for facts, check mem0 for preferences/patterns.
Performance Benefits
- - +26% accuracy over OpenAI Memory (LOCOMO benchmark)
- 91% faster than full-context retrieval
- 90% fewer tokens than including all conversation history
- Sub-50ms semantic search retrieval
Configuration
Located in scripts/mem0-config.js:
CODEBLOCK7
Uses Clawdbot's OpenAI API key from environment (OPENAI_API_KEY).
Integration Patterns
For detailed workflow patterns, error handling, and best practices, see:
Programmatic Use
All scripts support JSON_OUTPUT environment variable for programmatic access:
CODEBLOCK8
Returns JSON after human-readable output (look for ---JSON--- marker).
Resources
scripts/
- -
mem0-config.js - Configuration and instance initialization - INLINECODE6 - Search memories semantically
- INLINECODE7 - Add new memories
- INLINECODE8 - List all memories
- INLINECODE9 - Delete memories
references/
- -
integration-patterns.md - Detailed best practices and patterns
Mem0 记忆集成
Mem0 为 Clawdbot 添加了智能、自适应的记忆层,能够自动学习并回忆用户在所有交互中的偏好、模式和上下文。
核心工作流程
1. 响应前搜索
在回答用户问题之前,搜索 mem0 获取相关上下文:
bash
node scripts/mem0-search.js 用户偏好 --limit=3
使用检索到的记忆来:
2. 交互后存储
显式存储(当用户说记住这个时):
bash
node scripts/mem0-add.js Abhay 偏好简洁的更新
对话存储(用于上下文学习):
bash
以 JSON 格式传递消息
node scripts/mem0-add.js --messages=[{role:user,content:我喜欢简洁的更新},{role:assistant,content:收到!}]
可用命令
搜索记忆
bash
node scripts/mem0-search.js 查询文本 [--limit=3] [--user=abhay]
在存储的记忆中进行语义搜索。返回按相关性排序的记忆。
添加记忆
bash
简单文本
node scripts/mem0-add.js 记忆文本 [--user=abhay]
对话消息(自动提取记忆)
node scripts/mem0-add.js --messages=[{...}] [--user=abhay]
Mem0 的 LLM 会自动提取、去重并合并相关记忆。
列出所有记忆
bash
node scripts/mem0-list.js [--user=abhay]
显示用户的所有存储记忆,包含 ID 和创建日期。
删除记忆
bash
删除特定记忆
node scripts/mem0-delete.js
删除用户的所有记忆
node scripts/mem0-delete.js --all --user=abhay
存储与不存储的内容
✅ 存储这些:
- - 显式请求:记住我...
- 偏好:沟通风格、格式选择
- 个人上下文:工作信息、兴趣、家庭(非敏感)
- 使用模式:频繁请求、时间偏好
- 纠正:用户纠正你的错误时
- 适应性事实:当前项目、近期兴趣
❌ 不存储:
- - 机密、密码、API 密钥
- 临时上下文(除非明确要求)
- 系统错误或调试信息
- MEMORY.md 中已有的信息(避免重复)
补充 Clawdbot 记忆
Clawdbot MEMORY.md(结构化、有意识):
- - 永久事实:姓名 = Abhay,位置 = 新加坡
- 参考数据:邮箱、博客 URL、Twitter 账号
- 结构化知识:项目详情、凭据
Mem0(动态、学习型):
- - 偏好:Abhay 偏好简洁的更新
- 模式:通常在早上 8:30 询问公交信息
- 适应性上下文:目前对 AI 新闻感兴趣
- 行为:喜欢直接回答,最少废话
两者结合使用:从 MEMORY.md 获取事实,从 mem0 获取偏好/模式。
性能优势
- - 比 OpenAI Memory 准确率 提高 26%(LOCOMO 基准测试)
- 比全上下文检索 快 91%
- 比包含所有对话历史 减少 90% 的 token
- 语义搜索检索 低于 50ms
配置
位于 scripts/mem0-config.js:
javascript
{
embedder: openai/text-embedding-3-small,
llm: openai/gpt-4o-mini,
vectorStore: memory (本地),
historyDb: ~/.mem0/history.db,
userId: abhay
}
使用 Clawdbot 的环境变量中的 OpenAI API 密钥(OPENAIAPIKEY)。
集成模式
有关详细的工作流程模式、错误处理和最佳实践,请参阅:
- - references/integration-patterns.md
编程使用
所有脚本支持 JSON_OUTPUT 环境变量用于编程访问:
bash
JSON_OUTPUT=1 node scripts/mem0-search.js 查询
在人类可读输出后返回 JSON(查找 ---JSON--- 标记)。
资源
scripts/
- - mem0-config.js - 配置和实例初始化
- mem0-search.js - 语义搜索记忆
- mem0-add.js - 添加新记忆
- mem0-list.js - 列出所有记忆
- mem0-delete.js - 删除记忆
references/
- - integration-patterns.md - 详细的最佳实践和模式