/recall-status
Show the health and status of the memory system.
$ 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-status
Context preview
What this command does when you run it.
Show the health and status of the memory system.
Command definition
recall-status.mdShow the health and status of the memory system.
What To Do
1. Check Memory System Exists
If CLAUDE.local.md and memory/ directory don't exist:
Memory system not initialized. Run /recall-init to set up.
2. Gather Metrics
**CLAUDE.local.md (Working Memory):**
- Word count (target: under 1500)
- Last updated date
- Number of open loops listed
**Daily Logs (memory/daily/):**
- Total number of files
- Date range (oldest to newest)
- Total size
- Entries in last 7 days
**Registers (memory/registers/):**
- Number of register files
- Total size
- Count entries with `last_verified` dates older than 30 days (stale)
- Count entries marked `[superseded]`
**Archive (memory/archive/):**
- Number of files
- Total size
**Entry IDs (memory/.recall/metadata.json):**
- Count entries with `^tr` IDs (tagged) vs without (untagged) across managed files (CLAUDE.local.md, registers, archive)
- Count metadata.json entries total
- Count pinned entries
- Count snoozed entries (with active snooze)
- Count superseded entries
**Hooks:**
- Check .claude/settings.json or .claude/settings.local.json for SessionStart and PreCompact hook config
3. Display Status
Memory System Status
────────────────────
Working Memory: [N] words ([N]% of 1500 limit)
(CLAUDE.local.md) Last updated: [date]
Open loops: [N]
Protocol: .claude/rules/total-recall.md ✓
Schema: memory/SCHEMA.md ✓
Daily logs: [N] files, [size] total
Range: [oldest] → [newest]
Last 7 days: [N] entries
Registers: [N] files, [size] total
Stale entries (>30 days): [N]
Superseded entries: [N]
Archive: [N] files, [size] total
Entry IDs: [N] tagged / [M] untagged
metadata.json: [N] entries
Pinned: [N], Snoozed: [N], Superseded: [N]
Hooks:
SessionStart [✓ configured / ✗ not configured]
PreCompact [✓ configured / ✗ not configured]4. Recommendations
Based on metrics, suggest actions:
- If working memory > 1200 words: "Working memory approaching limit — consider archiving stale items"
- If stale entries > 0: "Run /recall-maintain to verify [N] stale entries"
- If no daily log in 3+ days: "No recent daily logs — memory capture may have gaps"
- If open loops > 5: "Consider reviewing open loops — some may be resolved"
- If registers are empty: "Registers are empty — use /recall-promote to populate from daily logs"
- If working memory stale (7+ days): "Working memory may be stale — review for accuracy"
- If hooks not configured: "Consider configuring SessionStart/PreCompact hooks for automated memory loading and flush"
- If untagged entries > 0: "Run /recall-init-ids to tag [N] untagged entries (required for /recall-maintain)"
- If superseded entries in metadata > 0: "Run /recall-maintain to clean up [N] superseded entries"
Read more
Show the health and status of the memory system.
What To Do
1. Check Memory System Exists
If CLAUDE.local.md and memory/ directory don't exist:
Memory system not initialized. Run /recall-init to set up.
2. Gather Metrics
**CLAUDE.local.md (Working Memory):**
- Word count (target: under 1500)
- Last updated date
- Number of open loops listed
**Daily Logs (memory/daily/):**
- Total number of files
- Date range (oldest to newest)
- Total size
- Entries in last 7 days
**Registers (memory/registers/):**
- Number of register files
- Total size
- Count entries with `last_verified` dates older than 30 days (stale)
- Count entries marked `[superseded]`
**Archive (memory/archive/):**
- Number of files
- Total size
**Entry IDs (memory/.recall/metadata.json):**
- Count entries with `^tr` IDs (tagged) vs without (untagged) across managed files (CLAUDE.local.md, registers, archive)
- Count metadata.json entries total
- Count pinned entries
- Count snoozed entries (with active snooze)
- Count superseded entries
**Hooks:**
- Check .claude/settings.json or .claude/settings.local.json for SessionStart and PreCompact hook config
3. Display Status
Memory System Status
────────────────────
Working Memory: [N] words ([N]% of 1500 limit)
(CLAUDE.local.md) Last updated: [date]
Open loops: [N]
Protocol: .claude/rules/total-recall.md ✓
Schema: memory/SCHEMA.md ✓
Daily logs: [N] files, [size] total
Range: [oldest] → [newest]
Last 7 days: [N] entries
Registers: [N] files, [size] total
Stale entries (>30 days): [N]
Superseded entries: [N]
Archive: [N] files, [size] total
Entry IDs: [N] tagged / [M] untagged
metadata.json: [N] entries
Pinned: [N], Snoozed: [N], Superseded: [N]
Hooks:
SessionStart [✓ configured / ✗ not configured]
PreCompact [✓ configured / ✗ not configured]4. Recommendations
Based on metrics, suggest actions:
- If working memory > 1200 words: "Working memory approaching limit — consider archiving stale items"
- If stale entries > 0: "Run /recall-maintain to verify [N] stale entries"
- If no daily log in 3+ days: "No recent daily logs — memory capture may have gaps"
- If open loops > 5: "Consider reviewing open loops — some may be resolved"
- If registers are empty: "Registers are empty — use /recall-promote to populate from daily logs"
- If working memory stale (7+ days): "Working memory may be stale — review for accuracy"
- If hooks not configured: "Consider configuring SessionStart/PreCompact hooks for automated memory loading and flush"
- If untagged entries > 0: "Run /recall-init-ids to tag [N] untagged entries (required for /recall-maintain)"
- If superseded entries in metadata > 0: "Run /recall-maintain to clean up [N] superseded entries"
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-forget
Mark memory entries matching a query as superseded. Does not delete — preserves history.
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

