Codearia Academy

claude-mem: so you stop explaining your project every morning

A plugin that remembers what you did in the last session and feeds the relevant part into the next one. How it is built, what it installs on your machine, and who it actually saves time for.

August 27, 20266 min readtested with claude-mem 13.4.0, August 2026
claude-mem cover: Claude Code sessions saved into one persistent memory
In this article5

claude-mem records what happened in a session, compresses it, and feeds the relevant part into the next one — so you stop recounting the project from scratch. One command to install, no attention required afterwards. The main trap: the familiar npm install -g only installs the library and switches nothing on — you need npx claude-mem install. 92 thousand stars, Apache-2.0, actively developed.

Anyone who has worked with AI for longer than a week knows the ritual. You open a new session and start again: "I have a Next.js project, here is the structure, here is what we did yesterday, here is why that file must not be touched." Ten minutes recounting what you already recounted yesterday. And the day before.

This is not the model being lazy. The session ends and the context is gone. The tool literally does not remember you.

92,000stars on GitHub — one of the most visible projects in the Claude Code ecosystemgithub.com/thedotmack/claude-mem, checked 27 August 2026

What it does

claude-mem hooks into Claude Code and runs in the background. While you work it records observations: which files were opened, what got fixed, what you decided. At the end of a session it compresses those into short summaries. At the start of the next one it feeds back the ones that are relevant.

From the outside it looks as though the tool remembers you. You sit down in the morning and it already knows how yesterday ended.

How this differs from CLAUDE.md

CLAUDE.md is what you wrote by hand: rules, stack, agreements. It is static and you maintain it. claude-mem writes itself and stores something else — the history of what happened. Neither replaces the other: the file describes the rules, the memory describes the path. They work together.

How it is built inside

This is not one program but several parts, and it is worth knowing what exactly takes up residence on your machine.

  1. 1

    Five lifecycle hooks

    The points where the plugin attaches to Claude Code: session start, prompt submitted, after a tool call, stop, session end. That is how it knows what happened.

  2. 2

    A local service

    A small HTTP server on your machine with a web interface for browsing and searching the memory. Managed by the Bun runtime.

  3. 3

    A SQLite database

    An ordinary file on disk: sessions, observations, summaries. No cloud.

  4. 4

    A Chroma vector database

    Search by meaning rather than by matching words. It is what lets you find "that bit where we fixed authentication" without remembering the exact wording.

  5. 5

    A search skill

    A separate skill through which you question the memory in plain language.

The search deserves a note of its own — it is a rare case of the token cost being thought through in advance. Instead of dumping everything it finds into the context, it works in three layers: first a compact list of results (50–100 tokens each), then a timeline around whatever looks interesting, and only then the full detail on the entries you picked. The developers claim roughly a tenfold saving against the naive "load everything".

Running it in five minutes

One command, and it is also the single most important detail in this piece.

Install
npx claude-mem install

Then restart Claude Code. Context from previous sessions starts appearing on its own.

If you use Claude Code plugins, you can install it from there:

Through the plugin marketplace
/plugin marketplace add thedotmack/claude-mem
/plugin install claude-mem

The trap that is easy to fall into

The command npm install -g claude-mem looks right and completes without errors — but it only installs the library. The hooks are never registered, the service never starts, the memory never works. The documentation says so plainly, but habit is stronger: install through npx claude-mem install or through the plugin.

What ends up on your machine: you need Node.js 20 or newer. The plugin installs Bun and uv (the Python package manager, needed for vector search) itself if they are missing. SQLite comes bundled. On Windows the usual stumble is not the plugin but Node not being on PATH — at which point the terminal simply does not recognise npm.

Who it is for, and who it is not

SituationWorth it?
One project you have been working on for monthsYes — this is where memory pays off fastest
Several projects in parallelYes — it keeps memory separated per project
One-off small tasks, something new each timeNo — there is nothing to accumulate
You have only just started and have not installed Claude Code yetTerminal first, memory later
Work involving sensitive dataCareful: observations are written to disk in the clear

That last row is not nitpicking. The memory records what happened in a session into a local database. It is your computer and there is no cloud — but if you work with someone else's credentials or with personal data, it is worth knowing that some of it settles into a file on disk.

The straight verdict

This is the rare case where a project with a hundred thousand stars really does what it promises, and does it quietly. One command to install, no attention required afterwards — and it is the demand for attention that kills most add-ons of this kind.

What gives pause: that is a lot of dependencies for a tool that "just remembers". Bun, uv, a vector database — each installs automatically, and each can one day break, and fixing it will be your job. Three hundred-odd open issues suggest we are not the only ones it breaks for.

The licence is Apache-2.0, so it can go into anything, commercial products included. The README is translated into thirty-odd languages, Russian among them.

Next step

Claude Code: persistent memory for every project

The three layers of memory — CLAUDE.md, external databases, and plugins like this one — and when each layer is actually needed.

Open the course

Comments