OpenClaw-Mem0 Plugin Adds Persistent Memory Outside Context Window

The openclaw-mem0 plugin addresses OpenClaw's default memory limitations by storing memories outside the context window, making them immune to context compaction, token limits, and session restarts.
The Memory Problem in OpenClaw
OpenClaw agents are stateless between sessions, with default memory stored in files that must be explicitly loaded. Context compaction summarizes older context to save tokens, causing injected memory to become lossy - large memory files and learned facts get compressed, rewritten, or dropped without warning.
Community workarounds like comprehensive MEMORY.md files, local BM25 + vector search engines, and SQLite-backed session logs all share the same limitation: they store memory inside the context window, making them vulnerable to compaction or session restarts.
How the Plugin Works
The plugin runs two processes on every conversation turn:
- Auto-Recall: Searches Mem0 for relevant memories before the agent responds, injecting matching context (preferences, past decisions, project details) into the working context every turn
- Auto-Capture: Sends each exchange to Mem0 after the agent responds, with Mem0's extraction layer determining what's worth persisting - new facts get stored, outdated ones updated, duplicates merged
Both processes are enabled by default on install.
Memory Structure
The plugin separates memory into two scopes:
- Long-term memories: User-scoped, persist across all sessions (name, tech stack, project structure, decisions)
- Short-term memories: Session-scoped, track active work without polluting long-term store
Both scopes are searched during every recall, with long-term memories surfaced first.
The agent gets five tools for explicit memory management:
memory_search- semantic queries across all memoriesmemory_store- explicitly save a specific factmemory_list- view all stored memoriesmemory_get- retrieve a specific memory by IDmemory_forget- delete memories (GDPR-compliant)
Setup Options
Cloud setup (easiest):
openclaw plugins install @mem0/openclaw-mem0Get an API key from app.mem0.ai, then add to openclaw.json:
{
"openclaw-mem0": {
"enabled": true,
"config": {
"apiKey": "${MEM0_API_KEY}",
"userId": "your-user-id"
}
}
}Fully local, fully private (self-hosted):
Set "mode": "open-source" and bring your own stack:
{
"openclaw-mem0": {
"enabled": true,
"config": {
"mode": "open-source",
"userId": "your-user-id",
"oss": {
"embedder": {
"provider": "ollama",
"config": {
"model": "nomic-embed-text"
}
},
"vectorStore": {
"provider": "qdrant",
"config": {
"host": "localhost",
"port": 6333
}
}
}
}
}
}📖 Read the full source: r/openclaw
👀 See Also

ConnectSafely AI MCP Server Links LinkedIn to Claude for Direct Control
ConnectSafely AI provides an MCP server that connects LinkedIn directly to Claude, allowing users to send messages, search for people, check profile visitors, and track conversations through prompts without switching tabs.

AutoBe: How Weak Local LLMs Fixed an AI Backend Generator's Architecture
AutoBe is an open-source AI agent that generates complete backend apps using TypeScript, NestJS, and Prisma. The team discovered their initial 100% compilation success produced unmaintainable code, then rebuilt with modular generation—crashing success to 40%—and used weak local LLMs like qwen3-30b-a3b-thinking to debug schema ambiguities.

Send OpenClaw Agents as Meeting Participants with Voice, Chat, and Screen Share
A new skill lets OpenClaw agents join Google Meet, Teams, and Zoom as full participants with voice (STT/TTS), chat, video avatar, and screen sharing.

Claude Code as a Compiler: A Practical Reframe for AI Development
A Reddit post argues Claude Code functions as a compiler translating English to working software, drawing parallels to historical computing breakthroughs like Grace Hopper's A-0 and FORTRAN. The author describes generating 400 lines across 6 files from a 3-paragraph English description, catching two issues in 25 minutes.