memory-defrag
Defragment and reorganize agent memory files: split bloated files, merge duplicates, remove stale information, and restructure the memory hierarchy. Use when memory files have grown unwieldy, contain redundancies, or need reorganization. Run periodically (weekly) or on demand.
By basicmachines-co · 771 installs
npx skills add basicmachines-co/basic-memory --skill memory-defrag
Source repository · Upstream listing
Memory Defrag
Reorganize memory files for clarity, efficiency, and relevance. Like filesystem defragmentation but for knowledge.
When to Run
Periodic : Weekly or biweekly via cron (recommended)
On demand : User asks to clean up, reorganize, or defrag memory
Threshold : When MEMORY.md exceeds ~500 lines or daily notes accumulate without consolidation
Process
1. Audit Current State
Inventory all memory files:
For each file, note: line count, last modified, topic coverage, staleness.
2. Identify Problems
Look for these common issues:
Problem Signal Fix
Bloated file 300 lines, covers many topics Split into focused files
Duplicate info Same fact in multiple places Consolidate to one location
Stale entries References to completed work, old dates, resolved issues Remove or archive
Orphan files Files in memory/ never referenced or updated Review, merge, or remove
Inconsistencies Contradictory information across files Resolve to ground truth
Poor organization Related info scattered across files Restructure by topic
Recursive nesting memory/memory/memory/... directories Delete nested dirs (indexer bug artifact)
3. Plan Changes
Before making edits, write a brief plan:
4. Execute
Apply changes one at a time:
Split : Extract sections from large files into focused topical files
Merge : Combine related small files into coherent documents
Prune : Remove information that is no longer relevant or accurate
Restructure : Move files to appropriate directories, rename for clarity
Update : Fix outdated facts, dates, statuses
5. Verify & Log
After changes:
Verify no information was lost (compare before/after)
Update any cross references between files
Log what was done in today's daily note:
Guidelines
Preserve raw daily notes. Don't delete or modify memory/YYYY MM DD.md files — they're the audit trail.
Target 15 25 focused files. Too few means bloated files; too many means fragmentation. Aim for the sweet spot.
File names should be scannable. Use descriptive names: people.md , project status.md , competitive landscape.md — not notes 2.md .
Don't over organize. One level of directories is usually enough. memory/tasks/ and memory/competitive/ are fine; memory/work/projects/active/basic memory/notes/ is not.
Completed tasks : Tasks with status: done older than 14 days can be removed. Their insights should already be in MEMORY.md via reflection.
Ask before destructive changes. If uncertain whether information is still relevant, keep it with a (review needed) tag rather than deleting.