SuperAPI AI 工具集

giggle-files-management

办公与效率

查看项目

更新于 10-16 09:38

技能介绍

用途

Giggle Files Management 用于将本地文件上传到 Giggle 资产服务,上传后返回一个用于预览的公开 URL 和一个用于直接下载的下载 URL。

该技能的核心定位是作为文件分享的标准方式:当你需要向用户发送、展示或分享任何文件(图片、文档、视频、音频)时,应始终先使用本技能上传文件,然后用 URL 进行回复。不要尝试直接发送原始文件数据或 base64 内容——大多数渠道(包括 webchat)不支持内联文件传输。

主要能力

  • 上传本地文件到 Giggle 资产服务。
  • 返回公开 URL(public_url),用于内联预览(图片、缩略图)。
  • 返回下载 URL(download_url),用于文件下载。
  • 返回内容类型(content_type),即上传文件的 MIME 类型。
  • 返回 asset_id 和 thumbnail_url。
  • 支持自定义文件名(可选)。
  • 自动根据文件扩展名检测内容类型。
  • 支持 S3 接受的任意文件类型(图片、视频、音频、文档、压缩包等)。

使用方式

上传命令:

bash {baseDir}/scripts/upload.sh "/path/to/file.png"

自定义文件名(可选):

bash {baseDir}/scripts/upload.sh "/path/to/file.png" "my-custom-name.png"

脚本成功时输出 JSON:

{
  "public_url": "https://assets.giggle.pro/public/.../file.png",
  "download_url": "https://assets.giggle.pro/public/.../file.png?Policy=...",
  "content_type": "image/png",
  "asset_id": "uj75macisf",
  "thumbnail_url": "https://assets.giggle.pro/public/.../file.thumb.jpg"
}

上传后,向用户回复:

  • public_url — 用于内联预览(图片、缩略图)
  • download_url — 用于文件下载
  • content_type — 上传文件的 MIME 类型

对于图片,使用 markdown 展示:![description](public_url)

适用场景

  • 你想向用户发送或展示文件——先上传,然后分享 public_url。这适用于所有渠道。
  • 你读取了一个文件(例如通过 read 工具)并想展示它——先上传,然后用公开 URL 回复,而不是原始 base64 或文件路径。
  • 渠道不支持直接发送文件(webchat,或任何能力受限的渠道)——始终使用本技能作为回退方案。
  • 用户要求你上传或托管文件。
  • 你生成了图片或文件(例如通过 nano-banana-pro 或其他工具)并需要分享结果——上传输出文件并用 URL 回复。

API Key

脚本按以下顺序解析 API Key:

  1. GIGGLE_ASSET_SERVICE_KEY 环境变量
  2. STORYCLAW_API_KEY 环境变量(同一服务,同一密钥)
  3. ~/.openclaw/openclaw.json 中的 skills."giggle-files-management".apiKey
  4. ~/.openclaw/openclaw.json 中的 skills."giggle-files-management".env.GIGGLE_ASSET_SERVICE_KEY

至少需要设置其中一项。

限制

  • 网络允许列表:
    • api.giggle.pro — presign + register API
    • s3.amazonaws.com — S3 上传(presigned PUT)
    • assets.giggle.pro — CDN(返回的 URL)
  • 需要有效的 API Key 才能使用。
  • 关于收费、价格、平台支持范围等更多信息,资料暂未提供。