用途:该技能通过命令行调用 Supabase Storage API,完成文件存储相关操作,包括存储桶管理与文件的上传、下载、列举、删除、移动、复制及 URL 生成。
主要能力:
- 存储桶:列举、创建(可设公开/私有、文件大小上限、允许的 MIME 类型)、查看详情、更新设置、删除、清空。
- 文件:上传(支持 upsert 覆盖、指定 Content-Type)、下载到文件或标准输出、列举(支持分页、排序、前缀目录、搜索)、删除单个或多个、移动/重命名、复制。
- URL:生成公开 URL(仅公开桶)和带过期时间的签名 URL,支持批量生成。
- 图像变换:公开桶可按 width、height、quality、resize 等参数实时变换。
- 访问控制:通过 Supabase 控制台的 Storage Policies(RLS)实现,例如公开读、认证用户写入、按用户目录隔离。
使用方式:需设置环境变量 SUPABASE_URL 与 SUPABASE_KEY,并 source 共享辅助脚本:source "$(dirname "${BASH_SOURCE[0]}")/../../scripts/supabase-api.sh"。随后用 supabase_get、supabase_post、supabase_delete 等封装函数或 curl 调用相应端点。
适用场景:需要在 Claude Code 中以脚本方式批量管理 Supabase 存储资源、上传下载文件、生成访问链接或配置访问策略时使用。
限制:删除存储桶前必须为空;公开 URL 仅适用于公开桶;敏感数据应使用私有桶和签名 URL;文件大小默认上限 50MB,可按桶配置至 5GB(更大需联系 Supabase);服务角色密钥不得暴露给客户端;具体价格与计费资料暂未提供。