Skip to content
Back to skills

Media Backup

ASecurity

Archive Clawdbot conversation media (photos, videos) to a local folder. Works with any sync service (Dropbox, iCloud, Google Drive, OneDrive).

  • 665 stars
  • 0 votes
  • 0 copies
  • 22 views
  • Added February 7, 2026
toolsgobashapi

Works with

  • api

Security analysis

A100/100

Pro scans all 3 files and shows the line behind each finding

Scanned February 12, 2026

npx -y skills add openclaw/skills --skill media-backup --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Media Backup?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Media Backup
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/openclaw-media-backup/badge)](https://www.skillsdirectory.com/skills/openclaw-media-backup)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
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:
```bash
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:
```json
{
  "skills": {
    "entries": {
      "media-backup": {
        "env": {
          "MEDIA_BACKUP_DEST": "/path/to/your/folder"
        }
      }
    }
  }
}
```

## Usage

```bash
# 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

Files in this skill

  • SKILL.md1.9 KB
  • _meta.json278 B
  • scripts/backup.py4.7 KB

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…