Agent skill
recall-promote
Review daily logs and promote entries to registers or working memory.
Install this agent skill to your Project
npx add-skill https://github.com/davegoldblatt/total-recall/tree/main/skills/recall-promote
SKILL.md
Review recent daily logs and surface candidates for promotion to registers or CLAUDE.local.md.
What To Do
1. Gather Recent Logs
Read all daily log files from the last 7 days (memory/daily/YYYY-MM-DD.md).
If no daily logs exist, tell the user:
No daily logs found. Use /recall-write or /recall-log to start capturing.
2. Identify Promotion Candidates
Scan each entry and evaluate:
Promote to CLAUDE.local.md if:
- Active commitment or deadline that affects every session
- Behavioral preference that changes default output
- Current project state that's essential context
Promote to a register if:
- Decision with rationale → decisions.md
- Person context → people.md
- Technical choice → tech-stack.md
- Preference with staying power → preferences.md
- Project milestone or state change → projects.md
Skip if:
- Already captured in a register or CLAUDE.local.md
- One-off observation with no future impact
- Debugging detail or transient state
3. Present Candidates
For each candidate, show:
Candidates for promotion:
1. [2026-02-03] "Project deadline moved to March 15"
→ Suggest: CLAUDE.local.md (active commitment)
2. [2026-02-02] "Prefers tabs over spaces, 2-space indent"
→ Suggest: registers/preferences.md
3. [2026-02-01] "Decided to use Postgres over SQLite for scale"
→ Suggest: registers/decisions.md
4. Ask User
For each candidate, ask the user what to do:
- Promote — write to the suggested destination
- Register — write to a different register (ask which one)
- Skip — don't promote, leave in daily log
- Promote all — accept all suggestions at once
5. Execute
For each promoted item:
- Write to the destination with proper metadata (claim, confidence, evidence, last_verified)
- Do NOT remove from daily log (daily logs are append-only history)
- Check for contradictions with existing entries before writing
- Assign a durable ID: For single-line list items promoted to CLAUDE.local.md or registers, append a
^trID (10 random lowercase hex chars). Create or updatememory/.recall/metadata.jsonwith an entry for the new ID (created_at,last_reviewed_at= now,pinned: false,snoozed_until: null,status: "active",tierfrom destination file). Creatememory/.recall/directory if needed. Write metadata.json with sorted keys.
6. Summary
Promotion complete:
→ 2 entries promoted to registers
→ 1 entry promoted to CLAUDE.local.md
→ 1 entry skipped
CLAUDE.local.md word count: [N]/1500
Warn if CLAUDE.local.md is approaching the 1500 word limit.
Recommended Agent Skills
Expand your agent's capabilities with these related and highly-rated skills.
recall-search
Search across all memory tiers (registers, daily logs, archive) for relevant information.
recall-init
Scaffold the Total Recall memory directory structure in this project.
recall-status
Show memory system health — word counts, stale entries, hook status, recommendations.
recall-log
Quick append to daily log without write gate evaluation.
recall-write
Write a note to memory with write gate evaluation. Only saves behavior-changing facts.
recall-forget
Mark memory entries as superseded. Preserves history, does not delete.
Didn't find tool you were looking for?