From recall
Adds durable ^tr IDs to untagged single-line memory entries in CLAUDE.local.md, registers, and archive files. Previews changes, generates collision-free IDs, applies on confirmation, updates metadata.json. Prerequisite for /recall-maintain.
npx claudepluginhub davegoldblatt/total-recallThis skill uses the workspace's default tool permissions.
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.
Runs memory maintenance: verifies IDs/duplicates, reconciles metadata, demotes working entries over 1500-word budget by score, cleans superseded entries.
Audits, classifies, and selectively prunes Claude Code agent memories by type, age, access frequency, staleness, and fidelity using decision trees and audit trails. Use when memory grows large, project state shifts, or retrieval degrades.
Guides Next.js Cache Components and Partial Prerendering (PPR): 'use cache' directives, cacheLife(), cacheTag(), revalidateTag() for caching, invalidation, static/dynamic optimization. Auto-activates on cacheComponents: true.
Share bugs, ideas, or general feedback.
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.
Scan these locations for single-line list item entries:
CLAUDE.local.md (working memory)memory/registers/*.md (all register files)memory/archive/**/*.md (archived entries, if they exist as list items)Do NOT scan memory/daily/*.md - daily logs are not managed by the remove gate.
An entry is exactly:
- (dash + space)- [None captured yet] or - [None yet] or - [not yet set]Already tagged: If the line ends with ^tr followed by exactly 10 lowercase hex characters, it already has an ID. Skip it.
Malformed tag: If the line ends with ^ followed by other text that doesn't match the tr[0-9a-f]{10} pattern, warn and skip it. Do not attempt to repair.
Before making any changes, show the user what will happen:
recall-init-ids — preview
━━━━━━━━━━━━━━━━━━━━━━━━━
Files scanned: [N]
Entries found: [N] total
Already tagged: [N]
Will be tagged: [N]
Skipped (malformed): [N]
Examples:
CLAUDE.local.md:
Before: - Don't blast into writing code unless explicitly told to
After: - Don't blast into writing code unless explicitly told to ^tr8f2a1c3d7e
registers/preferences.md:
Before: - Prefers tabs over spaces
After: - Prefers tabs over spaces ^tra4b2c1d9e0
Apply? [y]es / [c]ancel
Show up to 5 before/after examples, spread across different files.
If no untagged entries are found, report that and exit:
All [N] entries already have IDs. Nothing to do.
For each entry to be tagged:
tr + 10 random lowercase hex characters (use crypto-secure randomness)memory/.recall/metadata.json (if it exists) ^[id] to the end of the lineOnly after user confirms:
Rewrite each file with IDs appended to eligible entry lines. Do not modify any other lines in the file.
Create or update memory/.recall/metadata.json:
memory/.recall/ directory if it doesn't exist{
"tr8f2a1c3d7e": {
"created_at": "2026-02-12T10:15:30Z",
"last_reviewed_at": "2026-02-12T10:15:30Z",
"pinned": false,
"snoozed_until": null,
"status": "active",
"tier": "working"
}
}
tier based on file location:
CLAUDE.local.md -> "working"memory/registers/* -> "register"memory/archive/* -> "archive"recall-init-ids — complete
━━━━━━━━━━━━━━━━━━━━━━━━━━
Tagged: [N] entries across [M] files
Metadata: [N] entries in memory/.recall/metadata.json
Files modified:
CLAUDE.local.md [N] entries tagged
registers/preferences.md [N] entries tagged
...
You can now run /recall-maintain for pressure-based memory cleanup.