video-context

video-context is a skill for Claude Code, Codex from vusallyv/video-context-plugin. It costs 105 tokens per session (810 once invoked), scanned A, original, MIT.

A video-analysis skill that turns a local video or video URL into still frames at scene changes and a spoken-audio transcript. The agent can then use those outputs to understand what happens in the video.

In plain words
What is it for?
It is for analyzing recordings, explaining video content, investigating bugs shown in videos, and summarizing videos from files or URLs.
Why use it?
Coding agents generally read text and images but cannot directly watch video. This removes the need to describe the video manually when asking for analysis, summaries, or debugging help.

Skill for Claude CodeCodex

Installs and runs on its own, but its text points at files inside its plugin — anything it tells you to read at a ${CLAUDE_PLUGIN_ROOT} path is only there once the plugin is installed. Installing the plugin gets both.

Part of the video-context plugin — 1 skill, 1 command shipped together

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.

agentmods
npx agentmods add skills/vusallyv/video-context-plugin/video-context
Any agent
npx skills add vusallyv/video-context-plugin --skill video-context
Clone the repo
git clone --depth 1 https://github.com/vusallyv/video-context-plugin

Made for: Claude Code, Codex.

Or install video-context, the plugin that ships this one along with the rest of its 1 skill, 1 command.

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 video-context

README.md
[![agentmods](https://agentmods.dev/badge/skills/vusallyv/video-context-plugin/video-context.svg)](https://agentmods.dev/skills/vusallyv/video-context-plugin/video-context)
Your own site
<a href="https://agentmods.dev/skills/vusallyv/video-context-plugin/video-context"><img src="https://agentmods.dev/badge/skills/vusallyv/video-context-plugin/video-context.svg" alt="Measured on agentmods" height="20"></a>
Per session 105 Skills are progressive disclosure: only the name and description are preloaded; the body loads when the skill is used.
When invoked 810 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 1 finding. Scan, not verified.
Origin original No closer match found 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 $0.00105 $0.00810
Opus 5 $0.00053 $0.00405
Sonnet 5 $0.00021 $0.00162
Haiku 4.5 $0.00011 $0.00081

Measured 3d ago against content hash 1e773c48fe72, method: parsed. Prices are Anthropic first-party input rates as of 2026-08-30, from the pricing page.

Security

Grade A, and why

video-context scanned grade A with 1 finding 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 3d ago.

The scan reads SKILL.md. This mod also ships 2 executable files (extract.sh, setup.sh), listed below but not scanned — reading those needs a real analyzer, not pattern matching.

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.

Makes network callslowCapability

Not a fault in itself. Listed so you know the mod talks to something, and to what.

| Public URL (Loom, YouTube, Vimeo, public CDN, raw mp4) | `yt-dlp` first, falls back to `curl`. |
skills/video-context/SKILL.md · 76 lines

How it starts

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

video-context

Claude reads images, not videos. This skill turns any video into scene-change frames + audio transcript so Claude can reason about it.

Standalone — works on any source: local file, public URL, or private URL with auth.

When to use

User shares a video and wants Claude to understand its content. Examples:

  • "Analyze this video: "
  • "What does this recording show? /path/to/file.mp4"
  • "The bug is in this Loom: https://loom.com/share/..."
  • Bug ticket (Jira/Asana/GitHub/Linear) contains a video attachment.

How to use

${CLAUDE_PLUGIN_ROOT}/skills/video-context/extract.sh <url-or-path>

Script auto-resolves the source:

Source How it's fetched
Local file path Used directly.
Public URL (Loom, YouTube, Vimeo, public CDN, raw mp4) yt-dlp first, falls back to curl.
Private URL needing auth curl with VIDEO_AUTH_HEADER env var.

Private URL with auth

Set VIDEO_AUTH_HEADER to whatever the host needs:

# Bearer token
VIDEO_AUTH_HEADER="Authorization: Bearer $TOKEN" \
  ${CLAUDE_PLUGIN_ROOT}/skills/video-context/extract.sh "https://host.example/asset/123"

# Basic auth (e.g. Atlassian email + API token)
VIDEO_AUTH_HEADER="Authorization: Basic $(echo -n "$EMAIL:$TOKEN" | base64)" \
  ${CLAUDE_PLUGIN_ROOT}/skills/video-context/extract.sh "https://your-org.atlassian.net/rest/api/3/attachment/content/12345"

If user shares a private URL without a token, ask for one — or tell them to download the video and paste the local path.

After it runs

Script prints WORKDIR, frame paths, transcript path. Then:

  1. Read each frame — Claude sees JPEGs natively.
  2. Read the transcript at $WORKDIR/transcript.txt.
  3. Combine frames + transcript to answer the user.

Tuning (env vars)

Var Default What
SCENE_THRESHOLD 0.4 Lower = more frames. Screen recordings often need 0.2.
MAX_FRAMES 20 Hard cap; trimmed evenly across timeline.
FRAME_WIDTH 1280 Downscale to save tokens.
WHISPER_MODEL /opt/homebrew/share/whisper-cpp/ggml-base.en.bin whisper-cpp model path.

Read the full file on GitHub · 76 lines

Files

What ships with it

2 files beside SKILL.md in the same directory: the scripts, references and assets a skill reads on demand. Not counted in the per-session cost; read them before you install if any of them is executable.

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. 3d ago First seen · 76 lines · 105 tokens per session scan A 1e773c48fe72

Subscribe to this mod's changes

video-context is a skill published in the GitHub repository vusallyv/video-context-plugin (3 stars, last pushed 4mo ago), licensed MIT. It adds 105 tokens to every session and 810 once invoked, about $0.0005 per session on Opus 5. A static security scan graded it A with 1 finding (makes network calls). No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-31.

Related

Other skills, from other repositories

i-see-you

Take a still photo from the machine's local webcam with ffmpeg, then read/analyze or send the image. Cross-platform — Linux (V4L2), macOS (AVFoundation), Windows (DirectShow). Trigger when the user asks to "看看我", "take a photo", "take a picture", "selfie", "拍照", "自拍", "看看现在的环境/房间", or when the agent needs to visually…

longsizhuo/i-see-you · 113 tokens

remove-ai-marks

Strip multi-vendor AI provenance from owned files: hidden Unicode (Layer A), statistical sampling watermarks via rewrite (Layer B — always offer), and C2PA/EXIF/XMP/container metadata on PNG/JPEG/WebP/SVG/PDF/DOCX/ODT/HTML/MD. Covers Claude, Gemini/SynthID-class, OpenAI provenance surfaces, and open-LLM sampling…

ShadowAqueduct/watermark-remover · 135 tokens

video-perception

Use when the user mentions a video file (.mp4, .mov, .avi, .mkv, .webm), a YouTube URL, asks to watch/analyze/review a video, or references video content in conversation.

jordanrendric/claude-video-vision · 51 tokens

product-launch-motion

Use when making, directing or rescuing a product launch video, promo, teaser, demo reel, sizzle, feature-announcement film or animated product explainer built from code — and when an existing one looks basic, reads as a slideshow, has reveals that miss the voiceover, an invisible cursor, an inaudible sound effect, a…

AbubakrChan/product-launch-motion · 137 tokens

rebuild-site

Rebuild a whole landing page / multi-section website from a screen recording that scrolls or walks through it. Use when the user has a recording of an ENTIRE page (not a single animation) and wants the full page recreated — layout, sections, copy, design system, and scroll animations. Orchestrates analyze (measured…

KumarSashank/motiscope · 104 tokens

recreate

Recreate an analyzed animation as working web code — GSAP (JavaScript), CSS/Web Animations, Framer Motion (React), or Lottie/SVG. Use after /motiscope:analyze, or when the user asks to "build/recreate this animation in ". Reads the motiscope animation spec and emits a runnable component.

KumarSashank/motiscope · 75 tokens