Compression Pipeline
When Compression Happens
Compression triggers: By default only/compact
is active. Enable save-on-clear during install or call claude-mem compress <transcript>
manually.
What Gets Compressed
Analyzes conversations for:1. Key Insights
- Problem solutions
- Bug fixes
- Implementation decisions
- Architecture choices
2. Code Changes
- New features added
- Refactoring performed
- Dependencies installed
- Configurations updated
3. Context
- Project information
- User preferences
- Technical decisions
- Future todos
Compression Algorithm
Compression Strategies
claude-mem uses different strategies based on content:Code-Heavy Sessions
For sessions with lots of code:- Extracts function/class definitions
- Captures implementation patterns
- Records dependency changes
Discussion Sessions
For conceptual discussions:- Summarizes decisions made
- Records architectural choices
- Captures requirements
Debugging Sessions
For troubleshooting:- Records error messages
- Documents solutions found
- Notes workarounds
Memory Document Structure
Each compressed memory becomes a searchable document:Compression Levels
Configure compression insettings.json
:
- Quick compression
- Key points only
- Small storage footprint
Smart Deduplication
claude-mem prevents duplicate memories:- Content Hashing - Detects identical content
- Similarity Check - Finds near-duplicates
- Time Window - Merges related memories
- Update Strategy - Updates existing vs creating new
Compression Output
After compression, you’ll see:Manual Compression
Trigger compression manually:Compression Statistics
View compression stats:Performance
Compression is optimized for speed:Metric | Value |
---|---|
Average Time | 2-3 seconds |
Memory Usage | < 50MB |
CPU Usage | < 10% |
Compression Ratio | 50:1 - 100:1 |
Troubleshooting Compression
Compression not triggering
Compression not triggering
- Check hooks are installed:
claude-mem status
- Verify transcript exists:
ls ~/.claude/code/transcripts/
- Check logs:
claude-mem logs
Low quality summaries
Low quality summaries
- Increase compression level in settings
- Ensure sessions are substantial (> 5 messages)
- Check for parsing errors in logs
Duplicate memories
Duplicate memories
- Run deduplication:
claude-mem dedupe
- Check time windows in settings
- Review similarity threshold