Requirements
- Target platform
- OpenClaw
- Install method
- Manual import
- Extraction
- Extract archive
- Prerequisites
- OpenClaw
- Primary doc
- SKILL.md
Install, configure, diagnose, and operate the openclaw-mem0 long-term memory plugin for OpenClaw agents. Use when the user wants to set up mem0 memory (platf...
Install, configure, diagnose, and operate the openclaw-mem0 long-term memory plugin for OpenClaw agents. Use when the user wants to set up mem0 memory (platf...
Hand the extracted package to your coding agent with a concrete install brief instead of figuring it out manually.
I downloaded a skill package from Yavira. Read SKILL.md from the extracted folder and install it by following the included instructions. Tell me what you changed and call out any manual steps you could not complete.
I downloaded an updated skill package from Yavira. Read SKILL.md from the extracted folder, compare it with my current installation, and upgrade it while preserving any custom configuration unless the package docs explicitly say otherwise. Summarize what changed and any follow-up checks I should run.
Long-term memory plugin for OpenClaw agents, powered by Mem0. Extracts and injects memories automatically around each agent turn.
openclaw plugins install @mem0/openclaw-mem0 This installs the plugin into ~/.openclaw/extensions/openclaw-mem0/ and adds it to openclaw.json.
Platform mode β no local dependencies. Get an API key from app.mem0.ai and skip to Configuration. Open-source mode β requires two local services: # Ollama (embedder + LLM) brew install ollama ollama serve # or: brew services start ollama ollama pull bge-m3:latest # embedder (1024-dim) ollama pull llama3.2 # LLM for memory extraction # Qdrant (vector store) docker run -d -p 6333:6333 qdrant/qdrant # or: brew install qdrant && qdrant Verify both are running: curl -s http://localhost:11434/ # β "Ollama is running" curl -s http://localhost:6333/health # β {"status":"ok"}
Add under plugins.entries (see Configuration below).
openclaw gateway stop && openclaw gateway Confirm the plugin loaded: grep "openclaw-mem0: initialized" ~/.openclaw/logs/gateway.log | tail -1 Expected output: openclaw-mem0: initialized (mode: open-source, user: ..., autoRecall: true, autoCapture: true)
ModeConfigRequiresplatformapiKey from app.mem0.aiInternet, Mem0 API keyopen-sourceoss block (self-hosted)Ollama + Qdrant (or other providers)
Platform: "openclaw-mem0": { "enabled": true, "config": { "mode": "platform", "apiKey": "${MEM0_API_KEY}", "userId": "your-id" } } Open-source: "openclaw-mem0": { "enabled": true, "config": { "mode": "open-source", "userId": "your-id", "oss": { "embedder": { "provider": "ollama", "config": { "model": "bge-m3:latest", "baseURL": "http://localhost:11434" } }, "vectorStore": { "provider": "qdrant", "config": { "host": "localhost", "port": 6333, "collection": "memories", "dimension": 1024 } }, "llm": { "provider": "ollama", "config": { "model": "llama3.2", "baseURL": "http://localhost:11434" } }, "historyDbPath": "/absolute/path/to/.openclaw/memory/history.db" } } } Always set historyDbPath to an absolute path. When openclaw runs as a LaunchAgent, process.cwd() is /, so the default relative "memory.db" resolves to /memory.db (unwritable on macOS), causing a SQLITE_CANTOPEN crash loop. See troubleshooting.md.
KeyDefaultNotesautoRecalltrueInject memories before each agent turnautoCapturetrueStore memories after each agent turntopK5Max memories injected per turnsearchThreshold0.5Min similarity score (0β1)userId"default"Scope memories per user
openclaw mem0 stats # Total memories, mode, user openclaw mem0 search "user's name" # Semantic search openclaw mem0 search "topic" --scope long-term # long-term | session | all
The plugin registers 5 tools for agents to call: ToolDescriptionmemory_searchSemantic search (scope: session/long-term/all)memory_listList all memories for a usermemory_storeExplicitly save a fact (longTerm: true by default)memory_getFetch memory by IDmemory_forgetDelete by ID or query
# Check gateway log for injection events grep "openclaw-mem0: inject" ~/.openclaw/logs/gateway.log | tail -5 # Confirm history DB created at configured path ls -la /path/to/history.db # No SQLITE errors since last gateway start grep "SQLITE_CANTOPEN" ~/.openclaw/logs/gateway.err.log | tail -3
See references/troubleshooting.md for: SQLITE_CANTOPEN crash loop (most common issue) Qdrant / Ollama not reachable Memories not being stored or recalled Telegram allowFrom config warning
Agent frameworks, memory systems, reasoning layers, and model-native orchestration.
Largest current source with strong distribution and engagement signals.