skills$openclaw/media-backup
dbhurley8.3k

by dbhurley

media-backup – OpenClaw Skill

media-backup is an OpenClaw Skills integration for coding workflows. Archive Clawdbot conversation media (photos, videos) to a local folder. Works with any sync service (Dropbox, iCloud, Google Drive, OneDrive).

8.3k stars4.8k forksSecurity L1
Updated Feb 7, 2026Created Feb 7, 2026coding

Skill Snapshot

namemedia-backup
descriptionArchive Clawdbot conversation media (photos, videos) to a local folder. Works with any sync service (Dropbox, iCloud, Google Drive, OneDrive). OpenClaw Skills integration.
ownerdbhurley
repositorydbhurley/media-backup
languageMarkdown
licenseMIT
topics
securityL1
installopenclaw add @dbhurley/media-backup
last updatedFeb 7, 2026

Maintainer

dbhurley

dbhurley

Maintains media-backup in the OpenClaw Skills directory.

View GitHub profile
File Explorer
4 files
.
scripts
backup.py
4.7 KB
_meta.json
278 B
SKILL.md
1.9 KB
SKILL.md

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

  1. Scans ~/.clawdbot/media/inbound/ for media files
  2. Organizes by date: YYYY-MM-DD/filename.jpg
  3. Tracks archived files by content hash (no duplicates)
  4. 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

README.md

No README available.

Permissions & Security

Security level L1: Low-risk skills with minimal permissions. Review inputs and outputs before running in production.

Requirements

  • OpenClaw CLI installed and configured.
  • Language: Markdown
  • License: MIT
  • Topics:

FAQ

How do I install media-backup?

Run openclaw add @dbhurley/media-backup in your terminal. This installs media-backup into your OpenClaw Skills catalog.

Does this skill run locally or in the cloud?

OpenClaw Skills execute locally by default. Review the SKILL.md and permissions before running any skill.

Where can I verify the source code?

The source repository is available at https://github.com/openclaw/skills/tree/main/skills/dbhurley/media-backup. Review commits and README documentation before installing.