核心功能
R2/S3 Upload Skill 是一款面向开发者的命令行文件上传工具,支持将文件上传至 Cloudflare R2、AWS S3、MinIO 等任何 S3 兼容对象存储,并自动生成预签名下载 URL。
主要用法
- 基础上传:
r2-upload /path/to/file.pdf自动上传并返回带签名的临时下载链接 - 自定义路径:通过
--key参数指定存储路径,如uploads/2026/file.pdf - 多桶管理:支持在配置文件中定义多个 bucket,用
--bucket切换 - 过期控制:链接有效期支持秒、分钟、小时、天等多种格式(默认5分钟)
- 公开链接:
--public生成无签名的永久访问 URL(需存储桶已配置公共访问)
配置特点
采用 YAML 配置文件管理多桶凭证,支持环境变量覆盖默认路径,内置 UUID 前缀防重名冲突,自动识别文件 MIME 类型。
显著优点
- 厂商兼容性强:一套工具覆盖 R2、S3、MinIO、Wasabi 等主流存储
- 临时链接安全:预签名 URL 避免文件长期暴露,适合分享敏感内容
- Cloudflare 生态整合:R2 无出口流量费,成本优势明显
- 命令简洁:单条命令完成上传+链接生成,适合脚本集成
潜在局限
- 依赖本地明文存储的访问密钥,存在凭证泄露风险
- 预签名链接一旦分享即可能扩散,缺乏访问审计能力
- 不支持上传前压缩、加密等预处理
- 无 Web 管理界面,纯命令行操作对非技术用户门槛较高
适合人群
开发者、DevOps 工程师、需要自建文件托管服务的中小企业技术团队,尤其已使用 Cloudflare 生态的用户。
常规风险
- 凭证安全:配置文件若权限设置不当,可能导致密钥被其他用户读取
- 链接泄露:预签名 URL 在有效期内可被任意持有方下载,无撤回机制
- 成本失控:误配置为公开桶或长过期时间可能导致意外流量消耗
- 区域延迟:未配置自定义域名时,R2 默认端点可能非最优 CDN 节点