Claude-Mem: AI Agent Memory for Claude Code
Claude-Mem is a plugin that gives Claude Code memory that survives past the end of a session by capturing what an agent did, compressing it into summaries, and handing the relevant pieces back later. Reach for it if you're tired of re-explaining project context every time you open Claude Code; skip it if you don't want a background worker service plus extra dependencies like Bun and uv added to your setup.
Understanding Claude-Mem's Purpose
Claude-Mem is a compression-based memory system for Claude Code, with documented support for OpenClaw, Codex, Gemini, Hermes, Copilot, and OpenCode. It runs five lifecycle hooks around a session, keeps observations and summaries in a local SQLite database, and adds a Chroma vector database on top for semantic search across earlier sessions.
Core Capabilities
- ✓Five lifecycle hooks (SessionStart, UserPromptSubmit, PostToolUse, Stop, SessionEnd, spread across six hook scripts) capture what happens in a session as it happens.
- ✓A worker service, managed by Bun, runs a local HTTP API and a web viewer UI that streams observations at the URL it prints on startup.
- ✓Observations and summaries live in a SQLite database; a Chroma vector database layers semantic search on top of plain keyword search.
- ✓The mem-search skill and three MCP tools (search, timeline, get_observations) work through a 3-layer pattern the README credits with roughly 10x lower token cost than pulling full detail for every result.
- ✓`<private>` tags mark content to keep out of storage entirely, per the README's privacy control feature.
- ✓CLAUDE_MEM_MODE sets both the workflow style (code, chill, investigation) and the language observations get written in; a Simplified Chinese mode (code--zh) ships built in.
- ✓Cloud Sync backs memories up to cmem.ai; the README describes it as daemon-free, with the worker syncing on write.
Getting Started with Claude-Mem
Run one command: `npx claude-mem install`. For OpenCode, it's `npx claude-mem install --ide opencode`; for Antigravity CLI, `npx claude-mem install --ide antigravity` (the README links a separate setup guide for that path). Inside Claude Code you can instead add the plugin marketplace with `/plugin marketplace add thedotmack/claude-mem` and then `/plugin install claude-mem`, then restart Claude Code so prior-session context starts showing up automatically. On an OpenClaw gateway, the installer is `curl -fsSL https://install.cmem.ai/openclaw.sh | bash`, which the README says also sets up AI provider configuration and starts the worker. One trap worth knowing: `npm install -g claude-mem` only pulls down the SDK/library — the README's guidance is to always install through `npx claude-mem install` or the in-app `/plugin` commands instead, since the global npm install skips the plugin hooks and worker.
Interacting with Agent Memory
Claude-Mem doesn't need you to trigger anything by hand day to day; the README frames the hooks as running the whole capture-and-summarize cycle on their own. When you want to dig for something specific, the mem-search skill and its MCP tools follow a 3-step path: `search` gives you a compact index (the README estimates 50-100 tokens per result), the `timeline` tool lines up nearby session events around whichever result caught your attention, and `get_observations` pulls the complete record only for the IDs you've already picked, batched rather than one at a time. The worker's own web viewer UI lets you watch the observation stream and look up citations by ID, and marking anything sensitive with `<private>` tags keeps it out of storage in the first place.
Strengths
- ✓Runs itself once installed — the lifecycle hooks handle capture and context injection without a manual save step.
- ✓A layered search path (search, then timeline, then get_observations) the README says cuts token spend roughly 10x versus fetching everything in full.
- ✓Covers more than one agent environment: the repo description names Claude Code plus OpenClaw, Codex, Gemini, Hermes, Copilot, and OpenCode.
- ✓`<private>` tags give you a specific opt-out for sensitive content instead of an all-or-nothing switch.
- ✓Apache-2.0 licensed, which the README says was picked so the memory system can be embedded in other developer tools and agent harnesses.
- ✓A web viewer at the worker's own URL, so you can see what's being captured instead of trusting a black box.
System Requirements and Considerations
- △No version number or release date appears in the README, so there's no documented signal of how mature the current build is.
- △Running it means a background worker service plus Bun and uv arriving as auto-installed dependencies, more moving parts than a plugin that just reads local files.
- △`npm install -g claude-mem` looks like the obvious install path but only sets up the SDK, not the plugin hooks or worker — a trap the README calls out explicitly.
- △Two of the three release branches, core-dev and community-edge, run from source rather than shipping through npm, so tracking them means building locally.
- △Built-in non-English observation modes only cover Chinese and Japanese (code--zh, code--ja); no other languages are listed as ready out of the box.
- △Semantic search leans on a Chroma vector database and Python's uv package manager running next to the Node/Bun stack, more infrastructure than a single-runtime tool.
Exploring Other AI Memory Tools
Frequently Asked Questions
Claude-Mem is released under the Apache License 2.0, a permissive license that generally allows commercial use, including inside proprietary products.
Claude-Mem's GitHub description lists Claude Code plus OpenClaw, Codex, Gemini, Hermes, Copilot, and OpenCode, with installers documented specifically for Claude Code, OpenCode, Antigravity CLI, and OpenClaw gateways.
Run `npx claude-mem install`, or inside Claude Code use `/plugin marketplace add thedotmack/claude-mem` followed by `/plugin install claude-mem`, then restart Claude Code.
Claude-Mem's Cloud Sync feature backs memories up to cmem.ai; the README describes it as daemon-free, with the worker syncing on write instead of a separate background process.
Claude-Mem supports `<private>` tags that exclude marked content from storage entirely, which is the privacy control the README documents.
Claude-Mem needs Node.js 20.0.0 or higher and a recent Claude Code build with plugin support; Bun, uv, and SQLite 3 sit underneath, with Bun and uv auto-installed if missing.
The problem it solves
An AI coding agent's context resets the moment a session ends or the context window fills up, so the next session starts blind to decisions made an hour or a week earlier. Claude-Mem's own framing is that it records what an agent did, compresses it, and hands back the useful pieces automatically next time, instead of you re-pasting notes or re-explaining a codebase's history at the start of every Claude Code session.
Best use cases
- •Multi-day Claude Code work where you don't want to re-explain the project's history every morning.
- •Teams running Claude Code alongside OpenClaw, Codex, Gemini, Hermes, Copilot, or OpenCode who want one shared memory layer instead of separate context per agent.
- •OpenClaw gateway setups that want observation feeds piped out to Telegram, Discord, or Slack, per the README's gateway installer section.
- •Digging back through your own project history in plain language via the mem-search skill instead of scrolling old sessions.
Who should try it — and who should skip
Try Claude-Mem if you run Claude Code, or one of OpenClaw, Codex, Gemini, Hermes, Copilot, or OpenCode, on projects that span many sessions and you're tired of restating context, and you don't mind a worker process plus Bun and uv running alongside your editor. Skip it if you'd rather keep a single dependency-free plugin instead of a worker service with its own settings file, or you're content tracking project notes by hand.
Related repositories
Curious whether claude-mem is right for you?
Let ChatGPT, Claude, or Perplexity look into it — click below and see what AI actually says about claude-mem.
