Skip to content

/recall-forget

Mark memory entries as superseded. Preserves history, does not delete.

From plugin
20010 skills10 commands2 hooks
shell
$ npx -y skills add davegoldblatt/total-recall --skill recall-forget --agent claude-code

How it fires

How this skill gets triggered: by you, by Claude, or both.

  • Fires itselfAuto-invocation. Claude auto-loads it when your prompt matches the work.
  • You can call itInvoke it directly when you want it.
  • Slash command/recall-forget
How auto-invocation works

Context preview

The summary Claude sees to decide when to auto-load this skill.

Mark memory entries as superseded. Preserves history, does not delete.

SKILL.md

recall-forget.SKILL.md
description: Mark memory entries as superseded. Preserves history, does not delete.
argument-hint: <query>
disable-model-invocation: true

Mark memory entries matching a query as superseded. Does not delete — preserves history.

Query to forget: $ARGUMENTS

What To Do

1. Search for Matching Entries

Search across all memory tiers for content matching the query:

  • memory/CLAUDE.local.md
  • memory/registers/*.md
  • memory/daily/*.md

2. Show Matches

Found [N] entries matching "[query]":

1. [CLAUDE.local.md] "Prefers dark mode for all mockups"
2. [registers/preferences.md] "Dark mode preference (confidence: high, 2026-01-10)"
3. [daily/2026-01-10.md] "[14:00] User said they prefer dark mode"

3. Confirm with User

Mark these as superseded? This won't delete them — they'll be annotated as no longer current.

[a]ll / select by number / [c]ancel

4. Execute

For each confirmed entry:

**In registers:** Mark as superseded with date

## [superseded: 2026-02-05]
- **claim**: Prefers dark mode for all mockups
- **superseded_by**: User requested removal via /recall-forget
- **original_date**: 2026-01-10

**In CLAUDE.local.md:** Remove the entry entirely (working memory should only contain current facts)

**In daily logs:** Add a note but don't modify the original entry (daily logs are historical record)

[HH:MM] [superseded] "Prefers dark mode" — marked as no longer current via /recall-forget

5. Update Metadata

If any superseded entry has an inline `^tr` ID: 1. Load `memory/.recall/metadata.json` (if it exists) 2. For each entry with an ID, set `status: "superseded"` and update `last_reviewed_at` to now 3. Write metadata.json with sorted keys and 2-space indentation

Entries without IDs are handled as before (no metadata update).

6. Confirm

Superseded [N] entries for "[query]".
Memory updated across [N] files.
Metadata updated: [N] entries marked superseded.
Read more
Read it on GitHub ↗
Ships withrecall

A memory system for Claude Code that remembers what matters and forgets what doesn't.

Get the whole plugin, auto-invoked
Stats
200
Stars
0
Views
14
Forks
Maintained
Maintenance
Shell
Language
5mo ago
Last commit
5mo ago
Created

Repo: davegoldblatt/total-recall