Apple Apps & ServicesDocumentedScanned

media-backup

Archive Clawdbot conversation media (photos, videos) to a local folder.

Share:

Installation

npx clawhub@latest install media-backup

View the full skill documentation and source below.

Documentation

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