agentleFS
apappascsapappascs/claude-code-sessions/skills/session-memory-audit/SKILL.md

session-memory-audit

Skill2 starsChanged 26 days agoMITView on GitHub

Health-checks Claude Code memories for staleness, broken links, orphaned files, expired dates, missing frontmatter, and duplicates. Offers two-tier fixes: deterministic auto-fixes and AI-assisted corrections. Use when the user asks to clean up memories, check memory health, find stale memories, or audit their stored knowledge. Also triggered by: "memory health", "stale memories", "clean up memories", "memory audit".

The file

Show its rules and text

We split this skill into the rules it gives an agent

16 rules. About 0 are common, 15 are distinctive, and 1 is very specific to this project.

  • ≈0

    Common · estimate

    Many files like this have a rule of this kind.

  • ≈15

    Distinctive · estimate

    This author's own choices. Worth a look.

  • 1

    Very specific

    Tied to their project's names, files or tools. Probably skip.

  • Common
  • Distinctive
  • Very specific
  1. Distinctive:

    After the table, ask: "Apply all N auto-fixes?

    line 45
  2. Distinctive:

    If no — show summary and stop.

    line 61
  3. Distinctive:

    If yes — walk through ONE AT A TIME:

    line 63
  4. Distinctive:

    Read the file content

    line 68
  5. Distinctive:

    If approved, prepend it to the file

    line 72
  6. Distinctive:

    If found at a new location, suggest updating the path in the memory file

    line 76
  7. Distinctive:

    If not found, suggest removing the reference or marking the memory for deletion

    line 77
  8. Distinctive:

    Read both memory files fully

    line 80
  9. Distinctive:

    If duplicates: propose a merged version, ask user which project should keep it

    line 82
  10. Distinctive:

    If different: suggest renaming one to differentiate (e.g., "User profile — backend" vs "User profile — frontend")

    line 83
  11. Distinctive:

    Check if it references specific facts that may have changed (versions, counts, dates, URLs)

    line 87
  12. Distinctive:

    If user says outdated: help update the content

    line 89
  13. Very specific:

    If user says still valid: suggest updating the file's modification date with touch

    line 90
  14. Distinctive:

    NEVER delete a file without explicit user confirmation

    line 94
  15. Distinctive:

    NEVER modify MEMORY.md without showing what will change

    line 95
  16. Distinctive:

    If the user says "no" to reviewing AI-assisted findings, stop immediately — do not summarize them, do not suggest reviewing them later

    line 98

≈ “Common” is an estimate: at least 1 in 5 of the 350,495 skill files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.

Keep what fits and drop the rest. Your version, ready for your agents.
Files
SKILL.md

Step 1: Run the audit

bun run ${CLAUDE_PLUGIN_ROOT}/lib/memory-scanner.ts audit

Optional: --age-threshold N (default 60 days for staleness check)

Step 2: Present the summary

Show the health summary first:

Memory Health Report N memories across M projects N critical · N warnings · N info

Step 3: Present findings in two sections

IMPORTANT: Always separate findings into two clearly labeled groups.

Section A: Auto-fixable (deterministic, no AI)

These are safe, mechanical fixes. Present as a numbered table:

#ActionFileProjectIssue

Where Action is one of:

  • DELETE — for expired findings (delete file + remove MEMORY.md entry)
  • REMOVE — for broken_link findings (remove dead entry from MEMORY.md)
  • INDEX — for orphan findings with frontmatter (add entry to MEMORY.md)
  • SYNC — for index_mismatch findings (update MEMORY.md description)

After the table, ask: "Apply all N auto-fixes? (yes/no)"

If yes:

  • For DELETE: Remove the file with rm, then edit MEMORY.md to remove the line referencing it
  • For REMOVE: Edit MEMORY.md to remove the broken link line
  • For INDEX: Read the file's frontmatter, append a new entry to MEMORY.md: - [name](filename.md) — description
  • For SYNC: Update the MEMORY.md entry's description to match the file's frontmatter description

Report each fix as it completes.

Section B: AI-assisted (requires analysis)

Present these AFTER auto-fixes are complete (or skipped):

"There are also N findings that require analysis to fix. Would you like to review them? (yes/no)"

If no — show summary and stop. Do NOT proceed with AI-assisted fixes.

If yes — walk through ONE AT A TIME:

For each finding, the ai_action field tells you what to do:

missing_frontmatter:

  1. Read the file content
  2. Infer the memory type from content (user bio = user, behavioral rule = feedback, project state = project, external pointers = reference)
  3. Infer a concise name and description
  4. Show the proposed frontmatter to the user
  5. If approved, prepend it to the file

stale_path:

  1. For each missing path, search the filesystem by filename: find "$HOME" -name "filename" -type f 2>/dev/null | head -5
  2. If found at a new location, suggest updating the path in the memory file
  3. If not found, suggest removing the reference or marking the memory for deletion

duplicate:

  1. Read both memory files fully
  2. Compare content — are they truly duplicates or do they serve different projects?
  3. If duplicates: propose a merged version, ask user which project should keep it
  4. If different: suggest renaming one to differentiate (e.g., "User profile — backend" vs "User profile — frontend")

stale (age-based):

  1. Read the file content
  2. Check if it references specific facts that may have changed (versions, counts, dates, URLs)
  3. Present a summary: "This memory is N days old. It claims X — is this still accurate?"
  4. If user says outdated: help update the content
  5. If user says still valid: suggest updating the file's modification date with touch

Safety Rules

  • NEVER delete a file without explicit user confirmation
  • NEVER modify MEMORY.md without showing what will change
  • Auto-fixes are batched but each destructive action (DELETE) should be confirmed individually within the batch
  • AI-assisted fixes are always one-at-a-time with user approval
  • If the user says "no" to reviewing AI-assisted findings, stop immediately — do not summarize them, do not suggest reviewing them later

Download now (ZIP)

Does it work?

Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.

No reviews yet

People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.

  • It worked
  • Partly
  • It didn't
What did you use it for? e.g. Reviewing pull requests in a Rails app

Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.

Your trail

Files you open will collect here, so you can find them again.

Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.

Now do this for your own.

Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.