Installing claude-video's Python dependencies did not establish that its media workflow worked. Our test command failed, and the ten listed failures reported an unavailable FFmpeg executable. For developers considering Watch, the next useful check is whether the agent's execution environment has the required tools and can identify a known moment in a short recording.
Watch turns clips into timestamped evidence
The claude-video README calls the skill Watch and exposes it through /watch. Its documented local engine extracts frames and a transcript for an agent to inspect. Native captions come first, with optional speech transcription for videos without captions. Recorded interface bugs and technical demonstrations are plausible uses; our sandbox did not complete either task.
Frames and speech answer different questions. A transcript may preserve an explanation without showing the interface change it describes. Frames may show that change without preserving the speaker's qualification. Their availability also depends on the source and configuration: the README says a local file with speech fallback disabled will not produce a speech transcript. A visual summary should not invent the missing speech.
What happened when we ran it
Our sandbox installed claude-video in 7 seconds at commit 03ceb42 on November 8, 2026, recording 35 dependencies and 38 MB on disk. The build succeeded in 1 second. The test command exited 1 in 7 seconds: 195 passed, 10 failed and 44 collection/setup errors in the supplied 249-result summary.
The ten listed failures cover frame extraction, deduplication and audio operations. Nine report FileNotFoundError for ffmpeg; one reports that it cannot run FFmpeg because of that exception. The supplied tail does not show the causes of the 44 errors. It supports diagnosing an unavailable executable in the listed failures, but not attributing every error to it or predicting that the suite would pass after installation. No repaired rerun is recorded.
Pip-audit reported zero known vulnerabilities. That result does not establish the security of external media tools or remote services, or the accuracy of generated summaries. The recorded sandbox configuration had 3 CPUs, 8 GB of RAM and image label ghcr.io/astral-sh/uv:python3.12-bookworm. The label alone does not establish actual Python or operating-system versions. The scan found two CI workflow files and a tests directory, with no Dockerfile. No completed media workflow or video-summary accuracy measurement is supplied.
Check each program's requirements inside the agent session
Watch documents Python 3.10+, FFmpeg/ffprobe and current yt-dlp. Current yt-dlp supports Python 3.11+ when run through Python. Its standalone release binaries bundle their interpreter. Do not assume that one Python 3.10 environment satisfies both programs. YouTube also needs a supported JavaScript runtime/EJS setup.
Installing the skill supplies instructions and scripts, not these media programs. FFmpeg installed on a laptop is not thereby available inside a remote agent sandbox. Check dependencies where the agent executes its scripts.
The README explicitly excludes Claude Chat and Cowork. It directs Claude users to Claude Code and also documents Codex and other Agent Skills hosts. Our run did not verify those installation routes. For an initial trial, use a short local recording, choose the local engine explicitly and compare the resulting timestamps and visible claims with the original clip.
Choose where the recording goes
The README says auto selects Gemini when a Gemini key resolves and otherwise selects the local engine. Under Gemini, YouTube URLs go directly to Google; other URLs are downloaded, then uploaded like local files. The README documents deletion after the answer, but our run did not verify uploads, network traffic or deletion.
If sending video to Google is unacceptable, explicitly select --engine local. That choice still requires considering the execution host: local WhisperX runs wherever the agent executes its scripts, including a cloud host. Optional cloud transcription sends extracted audio to its selected provider. Choose the engine, transcription backend and execution host together.
Sampled frames can miss a subtle edit
The README gives balanced mode a default cap of 100 regular frames. It warns that scene changes do not capture every event and that thumbnail deduplication cannot preserve every code edit. It documents focused intervals, explicit timestamps and --no-dedup for closer inspection. These are documented controls, not accuracy results from our run.
Source access can also limit the evidence. Issue 268, opened on November 6, 2026, reports missing TikTok captions despite an available subtitle track. The reporter describes a local fix, but we did not reproduce the defect or verify that fix. GitHub's supplied metadata lists the last push as September 25, 2026, and release v0.3.2 on the same date. The issue's later opening does not establish a resolution or a support response time.
Choose a smaller component when it fits the job
yt-dlp is a command-line audio/video downloader. Choose it directly when downloaded media is the deliverable for an existing pipeline. Whisper provides speech recognition, speech translation and language identification. Choose it when spoken content is the task and you can provide the surrounding workflow. No speed or accuracy advantage between these options was measured here.
Documentation earns 4/5 under this rubric: 1 lacks a usable entry path; 2 gives an entry path without material requirements; 3 explains a path but leaves material setup or routing gaps; 4 documents entry paths, requirements, routing and troubleshooting while independent verification remains incomplete; 5 also requires verified instructions across the claimed routes. Watch's README supports 4 through its host restrictions, separate tool requirements, engine routing and troubleshooting. Our run did not verify its installation routes or complete a media workflow.
Setup ease, support quality and operating maturity remain unassessed. Before adopting Watch, use a clip whose important moment you already know and check whether the agent can point to it accurately.

