name: media-backup description: Archive Clawdbot conversation media (photos, videos) to a local folder. Works with any sync service (Dropbox, iCloud, Google Drive, OneDrive). metadata: {"clawdbot":{"env":["MEDIA_BACKUP_DEST"]}}
Media Backup
Simple backup of Clawdbot inbound media to a local folder. No APIs, no OAuth - just file copy.
Works with any cloud sync service since it's just copying to a local folder.
Setup
Set your destination folder:
export MEDIA_BACKUP_DEST="$HOME/Dropbox/Clawdbot/media"
# or
export MEDIA_BACKUP_DEST="$HOME/Library/Mobile Documents/com~apple~CloudDocs/Clawdbot/media" # iCloud
# or
export MEDIA_BACKUP_DEST="$HOME/Google Drive/Clawdbot/media"
Or add to clawdbot config:
{
"skills": {
"entries": {
"media-backup": {
"env": {
"MEDIA_BACKUP_DEST": "/path/to/your/folder"
}
}
}
}
}
Usage
# Run backup
uv run skills/media-backup/scripts/backup.py
# Dry run (preview only)
uv run skills/media-backup/scripts/backup.py --dry-run
# Custom source/destination
uv run skills/media-backup/scripts/backup.py --source ~/.clawdbot/media/inbound --dest ~/Backups/media
# Check status
uv run skills/media-backup/scripts/backup.py status
How It Works
- Scans
~/.clawdbot/media/inbound/for media files - Organizes by date:
YYYY-MM-DD/filename.jpg - Tracks archived files by content hash (no duplicates)
- Your cloud service syncs the folder automatically
Cron Setup
Run hourly backup:
0 * * * * cd ~/clawd && uv run skills/media-backup/scripts/backup.py >> /tmp/media-backup.log 2>&1
Or via Clawdbot cron job with task:
Run media backup: uv run skills/media-backup/scripts/backup.py
If files archived, reply: 📸 Archived [N] media files
If none, reply: HEARTBEAT_OK
Supported Formats
jpg, jpeg, png, gif, webp, heic, mp4, mov, m4v, webm
chat Comments (0)
Sign in to join the discussion and leave a comment.
Skill Details
GitHub Stars
230
GitHub Forks
71
Created
Jan 2026
Last Updated
il y a 5 mois
tools
tools productivity tools
Related Skills
Build your own?
Join 12,000+ developers contributing to the Claude ecosystem.
No comments yet. Be the first to share your thoughts!