skills/giggle-files-management/SKILL.md
Upload files to Giggle asset service and get public/download URLs.
npx skillsauth add giggle-official/storyclaw-assistant giggle-files-managementInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Upload local files to the Giggle asset service. Returns a public URL for preview and a download URL for direct download.
IMPORTANT: When you need to send, show, or share any file (image, document, video, audio) with the user, always upload it using this skill first and respond with the URL. Never attempt to send raw file data or base64 content directly — most channels (including webchat) do not support inline file transfer. This is the standard way to share files.
public_url. This applies to all channels.read tool) and want to display it — upload first, then respond with the public URL instead of raw base64 or file paths.bash {baseDir}/scripts/upload.sh "/path/to/file.png"
Custom filename (optional):
bash {baseDir}/scripts/upload.sh "/path/to/file.png" "my-custom-name.png"
The script outputs JSON on success:
{
"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"
}
Respond to the user with:
public_url — for inline preview (images, thumbnails)download_url — for file downloadcontent_type — the MIME type of the uploaded fileFor images, use markdown to display: 
The script resolves the API key in this order:
GIGGLE_ASSET_SERVICE_KEY env varSTORYCLAW_API_KEY env var (same service, same key)skills."giggle-files-management".apiKey in ~/.openclaw/openclaw.jsonskills."giggle-files-management".env.GIGGLE_ASSET_SERVICE_KEY in ~/.openclaw/openclaw.jsonAt least one must be set.
Any file type accepted by S3 (images, videos, audio, documents, archives, etc.). The script auto-detects content type from the file extension.
api.giggle.pro — presign + register APIs3.amazonaws.com — S3 upload (presigned PUT)assets.giggle.pro — CDN (returned URLs)tools
A CLI tool for making authenticated requests to the X (Twitter) API. Use this skill when you need to post tweets, reply, quote, search, read posts, manage followers, send DMs, upload media, or interact with any X API v2 endpoint.
development
Comprehensive spreadsheet creation, editing, and analysis with support for formulas, formatting, data analysis, and visualization. When Claude needs to work with spreadsheets (.xlsx, .xlsm, .csv, .tsv, etc) for: (1) Creating new spreadsheets with formulas and formatting, (2) Reading or analyzing data, (3) Modify existing spreadsheets while preserving formulas, (4) Data analysis and visualization in spreadsheets, or (5) Recalculating formulas
development
X2C Distribution and Wallet API — publish video to X2C platform, manage assets (balance, claim X2C, swap to USDC, withdraw, transactions).
data-ai
Manage X (Twitter) accounts — post tweets, like, reply, retweet, view timeline, search, auto-interact, analyze data.