web-media-getter

web-media-getter is a skill for Claude Code from connerkward/web-media-getter-skill. It costs 80 tokens per session (1,275 once invoked), scanned A, a copy of web-media-getter, MIT.

A skill for searching free image, video, and GIF sources, then optionally downloading results with information about their attribution.

In plain words
What is it for?
Use it to find stock, archival, historical, space, or reaction media for websites and other projects.
Why use it?
It gathers results from several media services at once, so you do not have to search each one manually.

Skill for Claude Code

Written for Claude Code: shipped in a Claude Code plugin.

Part of the web-media-getter plugin — 1 skill shipped together

Good fit Use it to find stock, archival, historical, space, or reaction media for websites and other projects.

Compare 6 skills from other repositories ↓
Install with agentmods
npx agentmods add skills/connerkward/web-media-getter-skill/web-media-getter-skill
Install

Getting it into your agent

One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.

Any agent
npx skills add connerkward/web-media-getter-skill --skill web-media-getter-skill
Clone the repo
git clone --depth 1 https://github.com/connerkward/web-media-getter-skill

Made for: Claude Code.

Or install web-media-getter, the plugin that ships this one along with the rest of its 1 skill.

Wrote this? Show the measurements

A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.

agentmods badge for web-media-getter

README.md
[![agentmods](https://agentmods.dev/badge/skills/connerkward/web-media-getter-skill/web-media-getter-skill/github.svg)](https://agentmods.dev/skills/connerkward/web-media-getter-skill/web-media-getter-skill)
Your own site
<a href="https://agentmods.dev/skills/connerkward/web-media-getter-skill/web-media-getter-skill"><img src="https://agentmods.dev/badge/skills/connerkward/web-media-getter-skill/web-media-getter-skill/github.svg" alt="Measured on agentmods" height="20"></a>

Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.

agentmods 80×15 button for web-media-getter

Your own site · 80×15
<a href="https://agentmods.dev/skills/connerkward/web-media-getter-skill/web-media-getter-skill"><img src="https://agentmods.dev/badge/skills/connerkward/web-media-getter-skill/web-media-getter-skill.svg" alt="Reviewed on agentmods" width="80" height="20"></a>
Per session 80 Skills are progressive disclosure: only the name and description are preloaded; the body loads when the skill is used.
When invoked 1,275 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 0 findings. A grade says what 26 rules found in the file — not that it is safe.
Origin 100% copy Near-identical to another mod in the catalogue.
Token cost

What it costs to keep this loaded

Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.

ModelPer sessionOnce invoked
Fable 5.1 $0.00080 $0.01275
Opus 5 $0.00040 $0.00638
Sonnet 5 $0.00016 $0.00255
Haiku 4.5 $0.00008 $0.00128

Measured 12d ago against content hash e320a3d27448, method: parsed. Prices are Anthropic first-party input rates as of 2026-09-12, from the pricing page.

Security

Grade A, and why

web-media-getter scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 12d ago.

A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.

Nothing flagged

None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.

Origin

This is a copy

100% identical to web-media-getter — 0 lines differ, which has more behind it and is treated as the original. This page carries a canonical link to it rather than competing with it.

SKILL.md · 89 lines

How it starts

The opening of the file, as written. The whole thing — 89 lines — stays where its author put it; the contents beside it link to each section on GitHub.

web-media

Query many free image/video sources in one fan-out, get a normalized result list, optionally download top-K with an attribution sidecar. Zero-dep stdlib script.

Script: webmedia.py (in this dir). Keys: PEXELS_API_KEY, PIXABAY_API_KEY in central/.env (optional — the 5 no-key sources work without them).

Sources

Source Key? Best for Media
openverse none CC web images (Flickr, museums) image
wikimedia none factual / historical / landmark photos image
internetarchive none historical/archival images + films image, video
loc none historical US prints/photos image
nasa none space imagery + video image, video
pexels free key modern stock photos + short video clips image, video
pixabay free key modern photos/illustrations + short clips image, video
klipy free key GIFs — recommended (free, unlimited, Tenor drop-in) gif
giphy free key GIFs — biggest library (prod key needs approval) gif

GIF sources fire only with --type gif. Keys: KLIPY_API_KEY, GIPHY_API_KEY in central/.env. (tenor adapter removed — Google EOL'd the API 2026-06-30.) klipy is the one to get (free + unlimited); its adapter is unverified — assumes Tenor-compatible request/response; verify against docs.klipy.com when you key it. webmedia.py "shrug" --type gif --count 6 --json

Usage

webmedia.py "1950s street scene" --type image --count 8 --json
webmedia.py "rocket launch" --type video --source nasa,internetarchive
webmedia.py "car factory 1930s" --source all --download --out /tmp/cars
  • --source all (default) | nokey (no-key only) | comma list (wikimedia,pexels)
  • --type image|video · --count N · --json · --download --out DIR
  • --download fetches each result's direct media URL and writes attribution.json (source, author, license, url, page_url) alongside the files.

Record schema

Read the full file on GitHub · 89 lines

Changes

What this file has done since we first saw it

Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.

  1. 12d ago First seen · 89 lines · 80 tokens per session scan A e320a3d27448

Subscribe to this mod's changes

web-media-getter is a skill published in the GitHub repository connerkward/web-media-getter-skill (2 stars, last pushed 2mo ago), licensed MIT. It adds 80 tokens to every session and 1,275 once invoked, about $0.0004 per session on Opus 5. A static security scan graded it A with 0 findings. It is 100% identical to web-media-getter, differing in 0 lines, and is treated as a copy.

Related

Other skills, from other repositories

screenstudio-alt

Screen-Studio-style post-production for screen recordings, headless — auto speed-up of idle, auto-zoom on click clusters, keystroke overlay chips, smoothed synthetic cursor, and 9:16 vertical export that follows the action. Use when polishing a screen recording / demo video for sharing, when the user mentions Screen…

connerkward/screenstudio-alt-skill · 104 tokens

design-spatial

Spatial composition and layout for frontend design. Load with design when composing pages/dashboards/components, or whenever generated UI looks off — overlapping/colliding elements, weak hierarchy, or generic ("looks like every startup site"). The core idea: a model can't trust its own layout, so render it, critique…

connerkward/ckw-design-skill · 0 tokens

design-system

Mechanical implementation invariants for frontend design: token architecture, typography hierarchy, loading order, FOUT prevention, chrome stability, motion timing, color semantics. Use with design when building components, pages, or design systems. (Aesthetic direction lives in design-thinking; anti-trend/anti-slop…

connerkward/ckw-design-skill · 67 tokens

ckw-design

Entry point for frontend design. Use WHENEVER building or touching the look of any web UI — components, pages, dashboards, landing pages, React/Vue/HTML-CSS — and whenever the user says "make this look better/nicer", "fix the spacing/layout", or mentions styling, color, typography, fonts, responsive design, polish, or…

connerkward/ckw-design-skill · 112 tokens

design-thinking

Direction and intent for frontend design. Use with design when defining purpose, tone, domain, color world, and review bar; includes cross-domain lens from cinema, architecture, marketing, UX, automotive, industrial design.

connerkward/ckw-design-skill · 46 tokens

design-ux

UX / usability audit — heuristic evaluation of INTERACTIVE UIs (not just visual polish). Load with design when a UI "feels off", "sucks to use", is hard to learn, needs an instruction wall, or before shipping an interactive tool/editor/app. Scores the RENDERED UI against Nielsen's 10 + interaction heuristics via a…

connerkward/ckw-design-skill · 112 tokens