gif-whatsapp

Search and send GIFs on WhatsApp. Handles the Tenor→MP4 conversion required for WhatsApp.

Safety Notice

This listing is from the official public ClawHub registry. Review SKILL.md and referenced scripts before running.

Copy this and send it to your AI assistant to learn

Install skill "gif-whatsapp" with this command: npx skills add shaharsha/gif-whatsapp

GIF Sender

Send GIFs naturally in WhatsApp conversations.

CRITICAL: WhatsApp GIF Workflow

WhatsApp doesn't support direct Tenor/Giphy URLs. You MUST:

  1. Download the GIF
  2. Convert to MP4
  3. Send with gifPlayback: true

Complete Workflow

Step 1: Search for GIF

gifgrep "SEARCH QUERY" --max 5 --format url

Search in English for best results.

Always get 5 results and pick the best one based on the filename/description - don't just take the first result.

Step 2: Download the GIF

curl -sL "GIF_URL" -o /tmp/gif.gif

Step 3: Convert to MP4

ffmpeg -i /tmp/gif.gif -movflags faststart -pix_fmt yuv420p -vf "scale=trunc(iw/2)*2:trunc(ih/2)*2" /tmp/gif.mp4 -y

Step 4: Copy to workspace (REQUIRED!)

cp /tmp/gif.mp4 /root/.openclaw/workspace/gif.mp4

⚠️ The message tool can ONLY send files from the workspace directory. Files in /tmp will fail with LocalMediaAccessError.

Step 5: Send via message tool

message action=send to=NUMBER message=" " filePath=/root/.openclaw/workspace/gif.mp4 gifPlayback=true

Use a single space as the message body — WhatsApp requires a non-empty message to send media, but the space won't be visible to the recipient.

One-liner Example

# Search
gifgrep "thumbs up" --max 3 --format url

# Pick best URL, then download + convert + copy to workspace:
curl -sL "https://media.tenor.com/xxx.gif" -o /tmp/g.gif && \
ffmpeg -i /tmp/g.gif -movflags faststart -pix_fmt yuv420p -vf "scale=trunc(iw/2)*2:trunc(ih/2)*2" /tmp/g.mp4 -y 2>/dev/null && \
cp /tmp/g.mp4 /root/.openclaw/workspace/g.mp4

# Then send with message tool from workspace path, gifPlayback=true

When to Send GIFs

✅ Good times:

  • User asks for a GIF
  • Celebrating good news
  • Funny reactions
  • Expressing emotions (excitement, facepalm, etc.)

❌ Don't overuse:

  • One GIF per context is enough
  • Not every message needs a GIF

Popular Search Terms

EmotionSearch Terms
Happycelebration, party, dancing, excited
Approvalthumbs up, nice, good job, applause
Funnylaugh, lol, haha, funny
Shockedmind blown, shocked, surprised, wow
Sadcrying, sad, disappointed
Frustratedfacepalm, ugh, annoyed
Loveheart, love, hug
Coolsunglasses, cool, awesome

Security & Safety Notes

  • Source domains: gifgrep only searches trusted GIF providers (Tenor, Giphy)
  • File handling: Downloads go to /tmp, then MUST be copied to workspace before sending (message tool only allows workspace paths)
  • Empty caption: A single space is used as the message body so WhatsApp sends the GIF without visible text
  • WhatsApp integration: Uses the platform's built-in message tool — no separate WhatsApp credentials needed
  • ffmpeg safety: Processes only GIF files from trusted providers; no arbitrary file execution

Why This Works

  • WhatsApp converts all GIFs to MP4 internally
  • Direct Tenor/Giphy URLs often fail
  • MP4 with gifPlayback=true displays as looping GIF
  • Small file size = fast delivery

Source Transparency

This detail page is rendered from real SKILL.md content. Trust labels are metadata-based hints, not a safety guarantee.

Related Skills

Related by shared tags or category signals.

General

Team Up

Team Up integration. Manage Organizations. Use when the user wants to interact with Team Up data.

Registry SourceRecently Updated
General

Retriever

Retriever integration. Manage Organizations, Leads, Projects, Pipelines, Users, Filters. Use when the user wants to interact with Retriever data.

Registry SourceRecently Updated
General

Pdf Tool

Work with PDF files including merge, split, extract text, and convert. Use when user needs to combine multiple PDFs, split a PDF into pages, extract text fro...

Registry SourceRecently Updated
General

Salesblink

SalesBlink integration. Manage Organizations, Pipelines, Projects, Users, Filters. Use when the user wants to interact with SalesBlink data.

Registry SourceRecently Updated