界面已本地化;技能介绍与说明文档按所选语言由 AI 自动翻译,代码、命令、路径和专业术语保留原文,以原作者文档为准。
探索技能
效率与协作 · SKILL.md

gif-search

gif-search

【效率与协作】Search/download GIFs from Tenor via curl + jq.

独立 GitHub 快照 · 自动分类 · 以原作者文档为准

技能说明

GitHub

name: gif-search description: "Search/download GIFs from Tenor via curl + jq." version: 1.1.0 author: Hermes Agent license: MIT platforms: [linux, macos, windows] prerequisites: env_vars: [TENOR_API_KEY] commands: [curl, jq] metadata: hermes: tags: [GIF, Media, Search, Tenor, API]

GIF Search (Tenor API)

Search and download GIFs directly via the Tenor API using curl. No extra tools needed.

When to use

Useful for finding reaction GIFs, creating visual content, and sending GIFs in chat.

Setup

Set your Tenor API key in your environment (add to ${HERMES_HOME:-~/.hermes}/.env):

TENOR_API_KEY=your_key_here

Get a free API key at https://developers.google.com/tenor/guides/quickstart — the Google Cloud Console Tenor API key is free and has generous rate limits.

Prerequisites

  • curl and jq (both standard on macOS/Linux)
  • TENOR_API_KEY environment variable

Search for GIFs

# Search and get GIF URLs
curl -s "https://tenor.googleapis.com/v2/search?q=thumbs+up&limit=5&key=${TENOR_API_KEY}" | jq -r '.results[].media_formats.gif.url'

# Get smaller/preview versions
curl -s "https://tenor.googleapis.com/v2/search?q=nice+work&limit=3&key=${TENOR_API_KEY}" | jq -r '.results[].media_formats.tinygif.url'

Download a GIF

# Search and download the top result
URL=$(curl -s "https://tenor.googleapis.com/v2/search?q=celebration&limit=1&key=${TENOR_API_KEY}" | jq -r '.results[0].media_formats.gif.url')
curl -sL "$URL" -o celebration.gif

Get Full Metadata

curl -s "https://tenor.googleapis.com/v2/search?q=cat&limit=3&key=${TENOR_API_KEY}" | jq '.results[] | {title: .title, url: .media_formats.gif.url, preview: .media_formats.tinygif.url, dimensions: .media_formats.gif.dims}'

API Parameters

ParameterDescription
qSearch query (URL-encode spaces as +)
limitMax results (1-50, default 20)
keyAPI key (from $TENOR_API_KEY env var)
media_filterFilter formats: gif, tinygif, mp4, tinymp4, webm
contentfilterSafety: off, low, medium, high
localeLanguage: en_US, es, fr, etc.

Available Media Formats

Each result has multiple formats under .media_formats:

FormatUse case
gifFull quality GIF
tinygifSmall preview GIF
mp4Video version (smaller file size)
tinymp4Small preview video
webmWebM video
nanogifTiny thumbnail

Notes

  • URL-encode the query: spaces as +, special chars as %XX
  • For sending in chat, tinygif URLs are lighter weight
  • GIF URLs can be used directly in markdown: ![alt](url)
我的收藏