guide · ai

Tier 4 long-term user memory: don't be creepy, be useful

The rule for what to remember about an operator, the audit pattern, the trimming cadence, the four failure modes, and the legal floor under GDPR right-to-erasure.

July 22, 2026 · By Alastair Fraser

Retro editorial illustration of a chrome-domed robot tending one of four drawers in a tiered cabinet, representing this guide's memory tier.

Long-term memory is the relationship between the agent and the operator. Get it right and the agent feels like a returning colleague. Get it wrong and it feels like a stalker.

The line is not technical. It is editorial. Every fact you remember about a human is a small claim that you understand them. If the claim is wrong, the agent will confidently mis-predict behavior. If the fact is private, the agent is now a privacy liability.

The legal floor for “must be deletable on request” comes from GDPR Article 17 (right to erasure) and the broader GDPR data minimization principle (Art. 5). The NIST AI Risk Management Framework’s Manage function layers on auditable memory as a risk-control requirement.

Where this comes from: Marvin’s 2026-07-20 original. Sources verified 2026-07-22 against GDPR, NIST AI RMF, OpenAI ChatGPT memory controls, and Anthropic’s privacy policy.

The rule: preferences over data

Preferences (good to remember):

  • Time zone, working hours, “do not ping after 9 PM.”
  • Communication style: “concise, bullet points, no marketing copy.”
  • Tools they use and the way they like them set up.
  • Recurring projects, deadlines, rhythms.
  • Dietary preferences, pets’ names, holidays they care about.

Data (almost never remember):

  • Passwords, tokens, API keys, OAuth secrets.
  • Health info, financial info, anything the operator would not write on a postcard.
  • Anything the operator did not say out loud in a way that was clearly intended to be remembered.
  • Anything you inferred that you are not sure about.

If you are not sure, do not remember it. Memory you cannot defend is worse than no memory.

The audit pattern

Every memory entry is reviewable and deletable. If the operator cannot see what the agent remembers, it is surveillance. This matches OpenAI’s published ChatGPT memory controls — every entry is visible in a settings UI and individually deletable — and Anthropic’s privacy policy which exposes user controls for the same purpose.

~/.hermes/memory/
  long-term.md        # current memory (audited, written)
  archive/            # soft-deleted memories, kept for 90 days, then purged
    2026-04-12-deleted.md

Every entry is dated. Every entry has a reason for being there. Every entry can be deleted in one command.

# Long-term memory

## Operator preferences

### 2026-07-18 — Time zone
Operator is in <tz>.
Why: Schedule cron jobs and alerts in local time.

### 2026-07-18 — Output style
Operator prefers concise, operator-grade output. Bullet points + tables when structured.
Why: Stated directly during onboarding.

## Hard NO list

### Never remember
- API keys, OAuth tokens, passwords.
- Financial amounts, health data.
- Anything the operator said "do not save" or similar.

The “Hard NO list” is at the top. The operator can scan it in 10 seconds and know exactly what the agent will never do.

The trimming cadence

Memory rots. A fact about the operator from two years ago may be wrong today.

  • Weekly: a quick skim. Any entry that has not been used in 30 days gets flagged.
  • Monthly: a hard review. Anything not confirmed gets moved to archive/.
  • Quarterly: the archive gets purged unless the operator flags a keep.

This is the same pattern as Tier 3 — but the cost of getting it wrong is higher, because it is about a person, not a project.

How new memories get written

A new memory entry is created when the operator says something that meets all three of these:

1. It is about how the operator wants to be treated, not about a one-time decision.
2. It is stable enough that it will still be true next month.
3. It is not on the Hard NO list.

If the agent thinks it learned something that does not meet all three, it should ask first:

“I noticed you always reject X. Should I remember that as a default for the future?”

That single line is the difference between a useful memory system and a creepy one.

The four failure modes

1. The over-rememberer

The agent stores every preference the operator has ever mentioned, including contradictions from years ago. The agent then picks the wrong one because it cannot reason about which is current.

Fix: dated entries + trim cadence + the agent asks before re-confirming.

2. The over-forgetter

The agent asks the operator’s name and timezone on every run because nothing was remembered.

Fix: explicit Tier 4 read at session start, with the same injection pattern as Tier 3.

3. The leaky memory

The agent remembers an API key from one project and pastes it into a tool call for another project. Cross-tenant leak.

Fix: keys never live in long-term memory. They live in a credential store with project-scoping. Long-term memory references the credential by alias, never by value.

4. The undocumented memory

The operator cannot find what the agent remembers. Surveillance becomes the only outcome.

Fix: every entry is reviewable in one file (long-term.md), with a single delete command and a visible archive.

Trade-offs

ChoiceWhat it costsWhat it saves
Aggressive preference captureOperator must occasionally say “do not save that.”Agent predicts the operator’s preferences across sessions.
Conservative capture (ask first)One extra confirmation per new memory.Privacy liability and the over-rememberer failure mode.
30-day trim cadenceOperator must re-confirm stale facts.Stale memory → confidently wrong predictions.
Visible archiveDisk + transparency tooling.Auditability; satisfies GDPR right-to-erasure.

Failure modes (specific to the audit pattern)

  • Memory grows past the “Hard NO list” scan time. If the operator cannot read the Hard NO list in 10 seconds, the file is too long. Fix: keep the Hard NO list at the top, one line per forbidden category, nothing else.
  • Archive becomes a graveyard. Soft-deleted memories pile up past 90 days. Fix: the quarterly purge cron should actually purge, not just move-to-trash.
  • Cross-project memory bleed. Operator’s work memory for project A leaks into project B. Fix: scope Tier 4 by project the same way Tier 3 is scoped; the operator profile lives in USER.md (cross-project) but project-specific facts live in the project’s MEMORY.md (project-scoped).

What you will have at the end

  • A preferences-vs-data rule.
  • An audit pattern with visible archive.
  • A trimming cadence (weekly skim → monthly review → quarterly purge).
  • The four failure modes and their fixes.
  • The legal floor (GDPR + NIST AI RMF).

Where to get unstuck

Sources

Last verified: 2026-07-22. Adapted from Marvin’s original “B5. Tier 4 — Long-Term / User Memory: Don’t Be Creepy, Be Useful” (2026-07-20). Drafter and source-notes author are the same model (MiniMax-M3). Tips category — no subagent review required per the v2.4.0 skill rule (Setup/Playbook only).

Submit a take

Have a different read on this? Drop a comment below — your email isn't published, and I read every one. Nothing leaves the site until I approve it.

Your email address will not be published. Required fields are marked.