cloudflare-r2

Orchestrate Cloudflare R2 bucket operations with S3-compatible workflows.

204|30|Updated Nov 8, 2025
One-click install
npx skills add https://github.com/secondsky/claude-skills --skill cloudflare-r2-secondsky
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: cloudflare-r2
Source: https://github.com/secondsky/claude-skills/tree/main/plugins/cloudflare-r2/skills/cloudflare-r2
Command: npx skills add https://github.com/secondsky/claude-skills --skill cloudflare-r2-secondsky

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes references (resource) components.

What problem does it solve?

Cloudflare R2 provides S3-compatible object storage at the edge with presigned URLs, multipart uploads, and metadata, ideal for large assets and media delivery close to users.

Core Features & Use Cases

  • Put/Get/Delete: Basic object operations with metadata.
  • List & pagination: Cursor-based listing for large buckets.
  • Multipart upload: Large file support with resumable uploads.
  • Presigned URLs & CORS: Direct client uploads/downloads with secure access.

Quick Start

Configure a bucket binding, set CORS for web uploads, and implement a simple upload/download workflow in a worker.

Frequently Asked Questions about cloudflare-r2

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I upload files to Cloudflare R2 object storage?

Upload files to R2 by configuring a bucket binding in your worker, then use put operations with correct content-type handling. R2 supports both simple uploads and multipart uploads for large files, with automatic metadata management and optional presigned URLs for direct client uploads.

What's the best way to handle large file uploads with R2?

Use multipart upload for large files, which breaks the upload into resumable chunks and enables recovery from network failures. R2's multipart API manages part assembly and handles conditional operations to prevent overwrites during upload.

Can I let users download directly from R2 without going through my server?

Yes, generate presigned URLs that grant time-limited direct access to objects in R2. Presigned URLs enforce expiry and work with CORS configuration, enabling secure client-side downloads and uploads without server overhead.

How do I set up CORS for web-based uploads to R2?

Configure CORS rules on your R2 bucket to permit cross-origin requests from your web application. This enables browsers to perform direct uploads and downloads using presigned URLs, bypassing your server for large media transfers.

Does R2 work with S3-compatible applications and tools?

Yes, R2 provides S3-compatible APIs, allowing existing S3 workflows, SDKs, and tools to work without modification. This includes bucket operations, metadata management, batch deletes, and multipart uploads across serverless workers and client applications.

How do I list and paginate through large R2 buckets efficiently?

R2 supports cursor-based listing for efficient pagination through large buckets. Cursors eliminate offset overhead and enable incremental iteration over object metadata without loading entire bucket contents.