with one click
gif-search
Search and fetch Tenor GIFs (free Tenor API key required)
Install with Codex or Claude Copy this prompt, paste it into Codex, Claude, or another assistant, and let it review the skill page and install it for you.
Menu
Search and fetch Tenor GIFs (free Tenor API key required)
Install with Codex or Claude Copy this prompt, paste it into Codex, Claude, or another assistant, and let it review the skill page and install it for you.
Search and download arXiv papers (no API key needed)
Delegate coding and file edits to Anthropic Claude Code CLI
Read/write Windows clipboard text, HTML, images, history (PowerShell)
Running scripts and code on Windows
Delegate coding tasks to OpenAI Codex CLI
Windows Defender: scans, threat history, signatures (PowerShell)
| name | gif-search |
| description | Search and fetch Tenor GIFs (free Tenor API key required) |
| category | media |
| version | 1.0.1 |
| origin | aiden |
| license | Apache-2.0 |
| tags | gif, tenor, giphy, search, media, animation, image, reaction, fun |
Search and fetch GIFs using the Tenor API. Obtain a free API key at
https://developers.google.com/tenor/guides/quickstart (takes 2 minutes) and set it as
the TENOR_API_KEY environment variable. All examples below use $env:TENOR_API_KEY
(PowerShell) or os.environ["TENOR_API_KEY"] (Python).
function Search-Gif($query, $limit = 5) {
$q = [Uri]::EscapeDataString($query)
$url = "https://tenor.googleapis.com/v2/search?q=$q&limit=$limit&key=$env:TENOR_API_KEY"
$resp = Invoke-RestMethod -Uri $url
$resp.results | ForEach-Object {
[PSCustomObject]@{
Title = $_.title
GifUrl = $_.media_formats.gif.url
PreviewUrl = $_.media_formats.tinygif.url
}
}
}
# Usage
Search-Gif "excited celebration" | Format-Table -AutoSize
import requests, urllib.parse
def search_gif(query, limit=5, api_key=None):
api_key = api_key or os.environ.get("TENOR_API_KEY", "")
params = {"q": query, "limit": limit, "key": api_key}
resp = requests.get("https://tenor.googleapis.com/v2/search", params=params)
resp.raise_for_status()
results = resp.json().get("results", [])
return [{"title": r["title"], "url": r["media_formats"]["gif"]["url"]} for r in results]
gifs = search_gif("happy dancing")
for g in gifs:
print(g["title"])
print(g["url"])
print()
$url = "https://tenor.googleapis.com/v2/featured?limit=10&key=$env:TENOR_API_KEY"
$resp = Invoke-RestMethod -Uri $url
$resp.results | Select-Object title, @{N="url";E={$_.media_formats.gif.url}}
$gifUrl = "https://media.tenor.com/your-gif.gif"
$outPath = "C:\Users\<you>\Downloads\reaction.gif"
Invoke-WebRequest -Uri $gifUrl -OutFile $outPath
Write-Host "Downloaded: $outPath"
# Categories: happy, sad, angry, love, funny, wow, thumbsup, facepalm, etc.
$category = "facepalm"
Search-Gif $category -limit 3 | Select-Object GifUrl
Register at https://developers.google.com/tenor/guides/quickstart — free, takes 2 minutes.
$env:TENOR_API_KEY = "your_api_key_here"
function Search-Gif($query, $limit = 5) {
$q = [Uri]::EscapeDataString($query)
$url = "https://tenor.googleapis.com/v2/search?q=$q&limit=$limit&key=$env:TENOR_API_KEY"
(Invoke-RestMethod -Uri $url).results | Select-Object title, @{N="url";E={$_.media_formats.gif.url}}
}
"Find me a GIF for when tests are passing"
→ Use step 2 with query "success celebration cheering" and return the top result URL.
"What are trending GIFs right now?" → Use step 3 to fetch featured/trending GIFs.
"Download the first result for 'thumbs up'"
→ Use step 1 to search, then step 4 to download the GifUrl of the first result.