agentleFS
xiaolaixiaolai/echo-sleuth-for-claude/skills/memory-management/SKILL.md

memory-management

Skill9 starsChanged 8 months agoISCView on GitHub

Use when auditing, extracting, pruning, or writing Claude Code memory files. Covers memory file format, MEMORY.md index conventions, staleness scoring, claim extraction heuristics, destination routing, mutation rules, and archive conventions.

23 other projects use a version of this, 1 of them edited.

Adopted by

Most recently taken up by

Used with

Projects with it also use agent-agent, agent-analyze-code-quality and 10 more.

Other files people use alongside this one.

Files found in the same public projects as a version of this one, more often than they turn up anywhere else. Each project counts once, large collections count for less, and this file's own repository is left out.

The file

We split this skill into the rules it gives an agent

4 rules. 0 are common, 3 are distinctive, and 1 is very specific to this project.

  • 0

    Common

    Most of the 22 edited versions we read keep these.

  • 3

    Distinctive

    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. Very specific:

    All values are plain strings, no quoting needed unless value contains :

    line 19
  2. Distinctive:

    No nested structures, no lists, no multi-line values

    line 20
  3. Distinctive:

    When writing: create individual .md file first, then append entry

    line 29
  4. Distinctive:

    Rule: Always target the session's originating project, not the current shell cwd.

    line 76

“Common” is measured: kept by at least 6 in 10 of the 22 edited versions of this file we could read. “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

Memory Management

Memory File Format

Frontmatter schema (simple key: value, NOT general YAML):

---
name: <string, required>           # short identifier
description: <string, required>    # one-line summary for relevance matching
type: <enum, required>             # value | user | feedback | project | reference
---
  • All values are plain strings, no quoting needed unless value contains :
  • No nested structures, no lists, no multi-line values
  • Body follows after the closing --- delimiter as markdown

MEMORY.md Index Format

  • Plain markdown file, no frontmatter
  • Contains links to individual memory files with brief descriptions
  • Lines after 200 are truncated by Claude Code's loader — keep concise
  • Entry format: - [filename.md](filename.md) — brief description
  • When writing: create individual .md file first, then append entry

Staleness Scoring

Exponential decay: score = 100 * (1 - exp(-age_days * ln(2) / half_life))

TypeHalf-lifeScore 50 atScore 90 at
value365 days365d~1213d
user180 days180d~598d
feedback90 days90d~299d
reference60 days60d~199d
project14 days14d~47d
unknown30 days30d~100d

Score-to-action: 0-50 = keep, 50-75 = review, 75-100 = prune.

Deep verification modifiers (additive, capped at 100):

  • +20 if referenced file is missing
  • +30 if referenced function/class not found
  • +10 if URL returns non-200
  • +15 if referenced branch doesn't exist

Claim Extraction Heuristics (Deep Audit)

Claim TypeDetection PatternVerification
File pathContains /, ends with file extensionGlob for existence
Function/classBacktick identifier in camelCase/PascalCase/snake_caseGrep in project
URLStarts with http:// or https://curl HEAD request
BranchAfter "branch" keyword or git pattern in backticksgit branch -a
PackageIn dependency/package contextGrep in manifest files

Skip generic descriptions that aren't verifiable (e.g., "use a database" vs "uses PostgreSQL 15").

Destination Routing

DestinationWhen to UseTarget Path
Memory file (value)Learned value choices — "X is better than Y"Session's project memory/ dir, type=value
Memory fileKnowledge for Claude's future behaviorSession's project memory/ dir
CLAUDE.mdHigh-impact instructions for every conversationSession's project root CLAUDE.md
Knowledge fileHuman-readable notes, decision logsdocs/knowledge/ in project root
SkipSession-specific, not worth preserving—

Priority: Value choices are the most durable memories. When extracting, surface them first. Facts decay (files move, APIs change); values persist (readability > cleverness survives any rewrite).

Rule: Always target the session's originating project, not the current shell cwd.

Mutation Rules

LayoutHow to Write
Index + filesCreate .md file with frontmatter, append to MEMORY.md
Standalone MEMORY.mdConvert to index layout: create first .md file, rewrite MEMORY.md as index
No memory dirCreate memory/, create MEMORY.md, create .md file
Malformed frontmatterRead as type=unknown. Never corrupt existing files.

Archive Convention

  • Location: memory/archive/ subdirectory
  • Files preserved intact (frontmatter + content)
  • MEMORY.md entry removed on archive
  • iter_memories() skips archive/ — invisible to dashboard/audit/tokens
  • Standalone MEMORY.md: archiving not supported (offer delete or keep)
  • Restore: manual move from archive/ + re-add to MEMORY.md

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.