Claude's memory works best when it forgets almost everything

The Components of Agent Memory

Claude's memory works best when it forgets almost everything

Anthropic explains how it builds memory for Claude agents: quick in-session notes, offline "dreaming" to consolidate and correct them, and letting the model judge what's worth saving. In Pokémon Red, Claude Sonnet 3.7 hoarded 413 memory files and earned one badge; Claude Fable 5 kept nine files and earned four. Telling stronger models what memory is for beats dictating rules — the rule "record only failures" actually hurt Opus 5.

If 3+ balls fail in a row, VARY the timing (insert extra 'wait' presses between menu steps) - the catch landed right after doing this.
  1. andai

    Not sure it's explained here but from the graph (fig. 10) it looks like wiki + search beats dreaming, and that dreaming adds only marginal gains to the wiki + search configuration.

    I'm assuming search is much cheaper than dreaming (though maybe it depends on the time scale?) so that sounds pretty important.

  2. yfontana

    So far I've turned off automatic memory creation in every harness I've used. Claude Code sometimes creates some anyway, and I probably delete 95% of them. The memories it creates are almost always relevant only to the specific task that it is currently working on. If it's a task I'll need to do again, then yeah, maybe that's useful. But that isn't the case most of the time, so I delete them to avoid cluttering context.

    So the main improvement to memories I'd like to see is better judgment on which ones to create.

    The parts about "dreaming" make me think of how agent transcripts contain a ton of information, which I think is currently under-utilized. I'll repeat advice I've seen here a few times: ingest your own transcripts into duckdb (claude code will build that pipeline in about 10 minutes) and do some data analysis on them. Some ideas if you don't know where to start: look at tool call failures to see if you can prevent common ones, check out if you have large cache misses and what causes them, look at various efficiency metrics over time (tokens per $, lines of code per tokens, etc.) with main thread vs sub-agents, etc. I started with this sort of things, and ended up following some threads to interesting insights. For example, I found indications that I tended to make Opus 5.5 / Sol 6.1 divide their work into units that were too small. They have the capacity to work on more stuff at once than older models, and I wasn't really taking advantage of that.

  3. bob1029

    Their progress toward cerulean chart is selling me pretty hard on no memory.

    The biggest thing I want to avoid with a long running agent is volatility. Anything that pushes it into one direction or the other that quickly is not desirable in the average case. At least not to me.

  4. prtmnth

    I have a skill called memory-prune whose sole purpose is to take an automatically created memory, assess whether it deserves to live, get stored in code comments, a rule, an AGENTS.md file in the project, the global AGENTS.md/CLAUDE.md file, or (and this is the most often picked option) not at all and deleted.

  5. 2001zhaozhao

    This article is a lot of validation for what I am building. I'll definitely be revisiting the article a few times to take in the ideas. Memory systems in AIs are extremely important and imho you can do much better than simply training the base model for memory management.

More from this day

2026-11-07