danieldmitriouk.com
← All Claude Skills Free · no signup

Claude can't watch videos. With this prompt, it can.

One prompt you paste into Claude Code. Claude installs three free tools and builds itself a /watch command. Then you give it a YouTube or Instagram link, and it reads what is said and looks at what is shown.

Get the prompt ↓

Three steps

1

Copy the prompt. The button below copies all of it at once.

2

Paste it into Claude Code. Claude asks before it installs anything. Say yes each time. It takes about five minutes.

3

Try it. Type /watch and paste a link. For example: /watch https://youtu.be/... sum up the steps for me

What you need

Claude Code on your computer, Mac, Windows or Linux. If you do not have it yet, that takes about ten minutes: setting Claude up properly.

The prompt

Paste into Claude Code
Set up a "watch" skill so you can watch videos for me. Do it step by step and tell me in plain English what you are doing.

1. Check which computer I am on (Mac, Windows or Linux).

2. Install these three free tools if they are missing:
   - yt-dlp (downloads videos and subtitles)
   - ffmpeg (cuts videos into pictures and sound)
   - openai-whisper (turns speech into text, runs on my computer)
   Use these ways, because plain "pip install" is blocked or missing on many computers:
   - Mac: install Homebrew first if it is missing, then: brew install yt-dlp ffmpeg openai-whisper
   - Windows: winget install yt-dlp.yt-dlp Gyan.FFmpeg astral-sh.uv, then: uv tool install openai-whisper --python 3.12
   - Linux: yt-dlp and ffmpeg from the package manager, then install uv and run: uv tool install openai-whisper --python 3.12
   Whisper does not work on the newest Python yet, which is why 3.12 is named.
   If something fails, explain why in one sentence and try the next best way. Check at the end that all three start.

3. Create the file ~/.claude/skills/watch/SKILL.md with this content (if you ask me for permission to write it, I will say yes):

```
---
name: watch
description: Watch a video from a link (YouTube, Instagram, TikTok and more) or a local file. Reads what is said and looks at what is shown, then answers questions about it. Use when the user says "/watch <link>", "watch this video", or pastes a video link and asks about it.
---

# watch

For every video, make a new folder in ~/watch/<short-name>/ and work in it.

## 1. Words
- First try the subtitles, without downloading the video:
  yt-dlp --skip-download --write-subs --write-auto-subs --sub-langs "en,en-orig,de,de-orig" -o "subs" "<link>"
- If no subtitle file appears, download only the sound and transcribe it:
  yt-dlp -x --audio-format mp3 -o "audio.%(ext)s" "<link>"
  whisper audio.mp3 --model small --output_format srt
- If you get "429 Too Many Requests", wait a minute and retry once, then use the whisper route.
- Clean the subtitle file (.vtt or .srt) into transcript.txt, one line per caption, keeping the timestamp in front, and removing repeated lines.

## 2. Pictures
- Download a small version of the video:
  yt-dlp -f "bv*[height<=720]+ba/b[height<=720]/b" -o "video.%(ext)s" "<link>"
- Save a picture every time the scene changes, with its timestamp:
  ffmpeg -i video.* -vf "select='gt(scene,0.3)',showinfo,scale=1280:-1" -fps_mode vfr frames/%04d.jpg 2> frames.log
  (Older ffmpeg that says "Unrecognized option fps_mode"? Use -vsync vfr instead.)
  Read the pts_time values from frames.log and write frames.txt as "0001.jpg  00:01:12".
- Fewer than 8 pictures (a static talking video)? Instead take evenly spaced pictures: one every 3 seconds for videos under 2 minutes, one every 10 seconds for longer ones:
  ffmpeg -i video.* -vf "fps=1/3,scale=1280:-1" frames/%04d.jpg   (use fps=1/10 for long videos)
- More than 60 pictures? Keep 60, spread evenly across the video.

## 3. Watch
- Read transcript.txt.
- Open every picture in frames/ and look at it. Read any text, code, slides or charts on screen.
- Match words and pictures by timestamp.
- Then answer the user's question. If there is no question, give a short summary: what the video is about, the key steps or ideas with timestamps, and anything that was only shown on screen and never said out loud.
```

4. Test it on a short public YouTube video of your choice and show me the summary.

5. Tell me in one sentence how to use it from now on: type /watch and paste a link.

How it works

1

It reads. Most YouTube videos have subtitles saved in the background. Claude grabs that file in about one second. With no subtitles, like on Instagram, it listens to the sound and writes down every word itself.

2

It looks. Every time the picture changes, it takes a screenshot. New slide, new screen, new step.

3

It joins the two. Every word and every screenshot has a timestamp, so Claude knows what was said while what was shown.

What I use it for

Good to know

Everything runs on your own computer. The three tools (yt-dlp, ffmpeg, Whisper) are open source and free. Long videos with no subtitles take a few minutes to write out.

More skills like this one

I post skills on Instagram regularly, and the full guide always ends up here on the site, free and without a signup.