/recall-forget
Mark memory entries matching a query as superseded. Does not delete — preserves history.
$ npx -y skills add davegoldblatt/total-recall --agent claude-codeShips with recall. Installing the plugin gets this command.
How it fires
How this command gets triggered: by you, by Claude, or both.
- Fires itselfClaude auto-loads it when your prompt matches the work.
- You can call itInvoke it directly when you want it.
- Slash command
/recall-forget
Context preview
What this command does when you run it.
Mark memory entries matching a query as superseded. Does not delete — preserves history.
Command definition
recall-forget.mdMark 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
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.
A memory system for Claude Code that remembers what matters and forgets what doesn't.
Other commands on recall.
- /recall-context
Show what memory context is currently available in this session.
Open command - /recall-init-ids
Add `^tr` IDs to untagged memory entries in managed files. This is safe to run multiple times - it only tags entries that don't already have IDs.
Open command - /recall-init
Initialize the Total Recall memory system in this project.
Open command - /recall-log
Quick append to today's daily log. No write gate — raw capture.
Open command - /recall-maintain
Run maintenance on the memory system. Primary function: pressure-based demotion when working memory exceeds the word budget. Secondary: stale entry verification, contradiction checks, open loop review.
Open command - /recall-promote
Review recent daily logs and surface candidates for promotion to registers or CLAUDE.local.md.
Open command

