✨ Features: - 🧠 Shadow learner that builds intelligence from command patterns - 🛡️ Smart command validation with safety checks - 💾 Automatic context monitoring and backup system - 🔄 Session continuity across Claude restarts 📚 Documentation: - Complete Diátaxis-organized documentation - Learning-oriented tutorial for getting started - Task-oriented how-to guides for specific problems - Information-oriented reference for quick lookup - Understanding-oriented explanations of architecture 🚀 Installation: - One-command installation script - Bootstrap prompt for installation via Claude - Cross-platform compatibility - Comprehensive testing suite 🎯 Ready for real-world use and community feedback! 🤖 Generated with Claude Code Co-Authored-By: Claude <noreply@anthropic.com>
4.0 KiB
How to Restore Your Work from a Backup
When to use this guide: Your Claude session crashed, lost context, or you need to recover previous work.
Quick Recovery (Most Common)
If you just lost context but your files are still there:
-
Check for session recovery files:
ls -la | grep -E "(LAST_SESSION|ACTIVE_TODOS|RECOVERY_GUIDE)"
-
Read your session summary:
cat LAST_SESSION.md
-
Continue from your todos:
cat ACTIVE_TODOS.md
This covers 90% of recovery scenarios. If you need to restore actual files, continue below.
Full File Recovery
Find Available Backups
List all available backups:
claude-hooks list-backups
Or check the backups directory directly:
ls -la .claude_hooks/backups/
You'll see entries like:
🗂️ backup_20240115_143022
📅 2024-01-15T14:30:22
📝 context_threshold
🗂️ backup_20240115_141856
📅 2024-01-15T14:18:56
📝 critical_operation
Choose the Right Backup
For context-related crashes: Use the most recent context_threshold
backup
For command failures: Use the backup before the problematic operation
For file corruption: Use the backup with the timestamp just before your issue
Restore Files from Backup
-
Navigate to the backup directory:
cd .claude_hooks/backups/backup_20240115_143022
-
Check what files are available:
ls -la files/
-
Copy specific files back:
cp files/important_script.py ../../
Or restore all modified files:
cp -r files/* ../../
Restore from Git Backup
If git backups were enabled:
-
Check git history:
git log --oneline | grep "Claude hooks auto-backup"
-
See what changed in a backup commit:
git show abc1234
-
Restore specific files:
git checkout abc1234 -- path/to/file.py
-
Or reset to a backup completely (careful - loses recent work):
git reset --hard abc1234
Restore Session State
If you want to continue exactly where you left off:
-
Restore the patterns database:
cp .claude_hooks/backups/backup_20240115_143022/state/patterns/* .claude_hooks/patterns/
-
Review the session state:
cat .claude_hooks/backups/backup_20240115_143022/state/session.json
-
Check what commands were running:
jq '.commands_executed[-5:]' .claude_hooks/backups/backup_20240115_143022/state/session.json
Emergency Recovery
If something went very wrong and you need to recover everything:
-
Find the most recent emergency backup:
ls -la .claude_hooks/emergency_backup.json
-
Extract the session data:
jq '.session_state.modified_files[]' .claude_hooks/emergency_backup.json
-
Manually locate and recover files using the file paths from the emergency backup
Validate Your Recovery
After restoring:
-
Check that your files are correct:
git status git diff
-
Verify Claude Hooks is working:
claude-hooks status
-
Test a simple command to ensure hooks are functioning:
echo 'print("test")' > test_recovery.py python3 test_recovery.py rm test_recovery.py
Prevention for Next Time
To make future recovery easier:
- Enable git backups: Set
"git_enabled": true
in config/settings.json - Lower backup threshold: Set
"backup_threshold": 0.75
to backup more frequently - Create manual backups before risky operations: Run
claude-hooks backup
Troubleshooting
No backups found: Check if hooks were properly installed with claude-hooks status
Backup files corrupted: Try the git backup method or emergency recovery
Can't find recent work: Check if files are in a different directory - backups preserve the relative path structure
Git backups not working: Ensure git is initialized in your project: git init