Claude Code Plugins

Community-maintained marketplace

Feedback

Upload, sync, and manage files across cloud storage providers using rclone. Use when uploading files (images, videos, documents) to S3, Cloudflare R2, Backblaze B2, Google Drive, Dropbox, or any S3-compatible storage. Triggers on "upload to S3", "sync to cloud", "rclone", "backup files", "upload video/image to bucket", or requests to transfer files to remote storage.

Install Skill

1Download skill
2Enable skills in Claude

Open claude.ai/settings/capabilities and find the "Skills" section

3Upload to Claude

Click "Upload skill" and select the downloaded ZIP file

Note: Please verify skill by going through its instructions before using it.

SKILL.md

name rclone
description Upload, sync, and manage files across cloud storage providers using rclone. Use when uploading files (images, videos, documents) to S3, Cloudflare R2, Backblaze B2, Google Drive, Dropbox, or any S3-compatible storage. Triggers on "upload to S3", "sync to cloud", "rclone", "backup files", "upload video/image to bucket", or requests to transfer files to remote storage.

rclone File Transfer Skill

Setup Check (Always Run First)

Before any rclone operation, verify installation and configuration:

# Check if rclone is installed
command -v rclone >/dev/null 2>&1 && echo "rclone installed: $(rclone version | head -1)" || echo "NOT INSTALLED"

# List configured remotes
rclone listremotes 2>/dev/null || echo "NO REMOTES CONFIGURED"

If rclone is NOT installed

Guide the user to install:

# macOS
brew install rclone

# Linux (script install)
curl https://rclone.org/install.sh | sudo bash

# Or via package manager
sudo apt install rclone  # Debian/Ubuntu
sudo dnf install rclone  # Fedora

If NO remotes are configured

Walk the user through interactive configuration:

rclone config

Common provider setup quick reference:

Provider Type Key Settings
AWS S3 s3 access_key_id, secret_access_key, region
Cloudflare R2 s3 access_key_id, secret_access_key, endpoint (account_id.r2.cloudflarestorage.com)
Backblaze B2 b2 account (keyID), key (applicationKey)
DigitalOcean Spaces s3 access_key_id, secret_access_key, endpoint (region.digitaloceanspaces.com)
Google Drive drive OAuth flow (opens browser)
Dropbox dropbox OAuth flow (opens browser)

Example: Configure Cloudflare R2

rclone config create r2 s3 \
  provider=Cloudflare \
  access_key_id=YOUR_ACCESS_KEY \
  secret_access_key=YOUR_SECRET_KEY \
  endpoint=ACCOUNT_ID.r2.cloudflarestorage.com \
  acl=private

Example: Configure AWS S3

rclone config create aws s3 \
  provider=AWS \
  access_key_id=YOUR_ACCESS_KEY \
  secret_access_key=YOUR_SECRET_KEY \
  region=us-east-1

Common Operations

Upload single file

rclone copy /path/to/file.mp4 remote:bucket/path/ --progress

Upload directory

rclone copy /path/to/folder remote:bucket/folder/ --progress

Sync directory (mirror, deletes removed files)

rclone sync /local/path remote:bucket/path/ --progress

List remote contents

rclone ls remote:bucket/
rclone lsd remote:bucket/  # directories only

Check what would be transferred (dry run)

rclone copy /path remote:bucket/ --dry-run

Useful Flags

Flag Purpose
--progress Show transfer progress
--dry-run Preview without transferring
-v Verbose output
--transfers=N Parallel transfers (default 4)
--bwlimit=RATE Bandwidth limit (e.g., 10M)
--checksum Compare by checksum, not size/time
--exclude="*.tmp" Exclude patterns
--include="*.mp4" Include only matching
--min-size=SIZE Skip files smaller than SIZE
--max-size=SIZE Skip files larger than SIZE

Large File Uploads

For videos and large files, use chunked uploads:

# S3 multipart upload (automatic for >200MB)
rclone copy large_video.mp4 remote:bucket/ --s3-chunk-size=64M --progress

# Resume interrupted transfers
rclone copy /path remote:bucket/ --progress --retries=5

Verify Upload

# Check file exists and matches
rclone check /local/file remote:bucket/file

# Get file info
rclone lsl remote:bucket/path/to/file

Troubleshooting

# Test connection
rclone lsd remote:

# Debug connection issues
rclone lsd remote: -vv

# Check config
rclone config show remote