SKILL.md
$27
# 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