Memory Manager
Manage the full Claude Code memory hierarchy across three layers. Produces well-organised, correctly-placed memory files that follow size guidelines and progressive disclosure.
Three Memory Layers
Layer Location Purpose Managed by this skill
CLAUDE.md hierarchy ./CLAUDE.md , subdirs, parent dirs Project context, commands, architecture, rules Yes
Rules topic files .claude/rules/*.md
Correction rules, patterns, technical facts Yes
Auto-memory ~/.claude/projects/*/memory/MEMORY.md
Session-specific patterns No (Claude manages automatically)
Operating Modes
Mode 1: Session Capture
When: End of session, "capture learnings", "update CLAUDE.md with what we learned"
-
Review the conversation for discoveries worth preserving:
-
Commands that worked (or didn't)
-
Gotchas and workarounds found
-
Architecture decisions made
-
Configuration quirks discovered
-
Patterns that would help future sessions
-
Categorise each discovery using the placement decision tree below
-
Draft all changes as diffs in a single batch
-
Present the batch — apply after a single yes/no confirmation
Keep it concise: one line per concept. No verbose explanations, no generic advice.
Mode 2: Full Audit
When: "audit memory", "check project docs", periodic maintenance, working in a neglected project
-
Run the audit script: python3 skills/memory-manager/scripts/audit_memory.py [repo-path]
-
Review the output: sizes, quality scores, project type, missing docs, stale references
-
Generate changes autonomously — create, update, or flag files as needed
-
Present all changes as a single batch for approval
-
Apply approved changes
For large repos, delegate to a sub-agent:
Task(subagent_type: "general-purpose", prompt: "Run python3 skills/memory-manager/scripts/audit_memory.py /path/to/repo and summarise the findings.")
Mode 3: Restructure
When: "restructure memory", root CLAUDE.md over 200 lines, first-time memory setup
-
Run full audit (Mode 2) first
-
Split oversized files:
-
Extract topic sections from root CLAUDE.md into .claude/rules/<topic>.md
-
Extract directory-specific content into sub-directory CLAUDE.md files
-
Create missing documentation files based on project type
-
Present the restructure plan, apply after approval
Placement Decision Tree
Would this still apply if I switched to a completely different project? ├── YES → ~/.claude/rules/<topic>.md │ (correction rules, API patterns, coding standards) └── NO → Is it specific to a subdirectory? ├── YES → <dir>/CLAUDE.md │ (integrations, directory-specific gotchas) └── NO → ./CLAUDE.md (project root) (identity, stack, commands, architecture, critical rules)
Size Targets
File Type Target Maximum
Root CLAUDE.md 50-150 lines 200
Sub-directory CLAUDE.md 15-50 lines 80
Rules topic file 20-80 lines 120
What Belongs Where
Root CLAUDE.md
-
Project name, purpose, owner
-
Tech stack summary
-
Build/deploy/test commands (copy-paste ready)
-
Directory structure overview
-
Critical "never do X" rules
-
Key integrations and secrets locations
Sub-directory CLAUDE.md
-
External service integrations for that component
-
Non-obvious configuration specific to this area
-
Directory-specific commands
-
Gotchas when working in this directory
Don't create when: parent covers it, directory is self-explanatory, content would be under 10 lines.
.claude/rules/ topic files
-
Correction rules bridging training cutoff (e.g. API changes, deprecated patterns)
-
Coding patterns and standards
-
Platform-specific formatting rules
-
Error prevention patterns
What to delete
-
Content Claude already knows from training
-
Verbose explanations of standard frameworks
-
Changelogs or version history (use git)
-
Duplicated content from parent CLAUDE.md files
-
"TODO" items that were never completed
-
Generic advice not specific to the project
Project Type Detection
The audit script detects project type from file presence and suggests appropriate documentation:
Indicator Type Suggested Docs
wrangler.jsonc / wrangler.toml
Cloudflare Worker ARCHITECTURE.md
vite.config.*
- .tsx files Vite/React ARCHITECTURE.md
next.config.*
Next.js ARCHITECTURE.md
MCP patterns in src/index.ts
MCP Server ARCHITECTURE.md, API_ENDPOINTS.md
src/routes/ or src/api/
API Project API_ENDPOINTS.md, DATABASE_SCHEMA.md
Drizzle/Prisma config Database DATABASE_SCHEMA.md
All projects get CLAUDE.md. Additional docs only when the project type warrants them. See references/project-types.md for full detection heuristics and doc templates.
Autonomy Rules
-
Just do it: Run audit, detect project type, identify gaps, draft changes
-
Brief confirmation: Apply changes (single batch yes/no, not item-by-item)
-
Ask first: Delete existing content, major restructures (moving 50+ lines), create new project docs from scratch where there's ambiguity about content
Quality Scoring
The audit script scores each CLAUDE.md on 6 criteria (100 points):
Criterion Points What it measures
Commands/Workflows 20 Build, test, deploy documented
Architecture Clarity 20 Structure, relationships, entry points
Non-Obvious Patterns 15 Gotchas, quirks, warnings
Conciseness 15 Dense content, no filler
Currency 15 References valid, commands work
Actionability 15 Copy-paste ready, real paths
See references/quality-criteria.md for the full rubric.
Reference Files
When Read
Scoring CLAUDE.md quality references/quality-criteria.md
Detecting project type and expected docs references/project-types.md
Creating new CLAUDE.md or rules files references/templates.md
Scripts
-
scripts/audit_memory.py — Scan all three layers, score quality, detect project type, flag issues
-
python3 audit_memory.py [repo-path] — human-readable report
-
python3 audit_memory.py [repo-path] --json — structured JSON output