upload-cdn

Upload local files to S3-compatible storage and return public CDN URLs.

9|Updated Jun 11, 2026
One-click install
npx skills add https://github.com/llm011/ethan-agent --skill upload-cdn
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: upload-cdn
Source: https://github.com/llm011/ethan-agent/tree/main/ethan/defaults/skills/upload-cdn
Command: npx skills add https://github.com/llm011/ethan-agent --skill upload-cdn

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes scripts (resource) components.

What problem does it solve?

This Skill removes the manual complexity of uploading local images and files to object storage and obtaining reliable public URLs for sharing or embedding.

Core Features & Use Cases

  • S3-Compatible Uploads: Upload files to Cloudflare R2 and other S3-compatible object storage services.
  • Public URL Generation: Return a public CDN URL after a successful upload.
  • Caching and Validation: Reuse cached results for identical files and object keys, validate required credentials, detect missing files, and infer common content types.
  • Use Case: Upload a locally generated image to a CDN and use the returned URL in a web page, document, or chat response.

Quick Start

Use the upload-cdn skill to upload the local file at the provided path to object storage and return its public URL.

Frequently Asked Questions about upload-cdn

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

FAQPage Schema
How do I upload local files to S3-compatible object storage and get a public URL?

You upload local files to S3-compatible object storage by providing the local file path, which triggers an AWS Signature Version 4 authenticated transfer that returns a public CDN URL for sharing.

Does object storage uploading work with Cloudflare R2?

Yes, object storage uploading works directly with Cloudflare R2. The Skill is designed to upload images and documents to Cloudflare R2 and other S3-compatible services, returning a public CDN URL.

Can I reuse cached upload results for identical files sent to object storage?

You can reuse cached upload results because the Skill maintains a local SQLite upload cache that validates identical files and object keys, preventing redundant transfers to object storage.

What environment variables do I need to configure for S3-compatible CDN uploads?

You need to configure CDN environment variables containing your S3-compatible storage credentials. The Skill validates these required credentials before performing any file upload or public URL generation.

How does content-type detection work when uploading assets to object storage?

Content-type detection works by inferring common media types during the file upload process, ensuring assets like images and documents are correctly identified when published to the CDN.