Watch video skill
Use when the user asks to watch, analyze, summarize, transcribe, OCR, extract keyframes from, or make notes from a video file or URL. Triggers include Douyin, TikTok, YouTube, yt-dlp, mp4/mov, subtitles, transcript, keyframes, video report, and "this video says what". Do not use for editing, generation, playback UI, or code maintenance.From its SKILL.md
npx -y skills add Dunteng/watch-video-skillAssembled from the repository path, not quoted from the project. Check it against their README if it does not work.
2 things to look at
- 1 stars1 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.
- runs commandsInstructs the agent to run 2 commands, including `python3 -m watchvideo` and 1 more.
SKILL.md
3.6 KB, 723 tokens by cl100k_base, as published. Nobody here has run it
Watch Video
Overview
Use watchvideo to turn video into evidence, then synthesize from the report, transcript, and keyframes.
The CLI prepares evidence, including local ASR; the Agent reads it and persists summary/analysis results to report.md by default.
Routing Boundaries
Use this skill for:
- Video links or files the user wants summarized, transcribed, inspected, or converted into notes.
- Requests involving
report.md,report.json,summary-input.md, transcripts, keyframes, OCR, or video-derived notes. - Existing analysis directories where the user wants the Agent to finish or write back.
Do not use this skill for:
- Editing, cutting, transcoding, compressing, publishing, or generating video assets.
- Building media players, playback UI, or video processing product features.
- Debugging or extending the
watchvideosource code; use normal coding/debugging workflows for that. - Generic article/PDF/webpage summarization when no video artifact or
watchvideooutput is involved.
Workflow
- Locate the skill repo containing this
SKILL.mdandwatchvideo/cli.py. Run CLI commands there withpython3 -m watchvideo .... - Keep analysis outputs in the user's current workspace, unless the user confirms another path. The CLI may cache
whisper.cppunder.tools/. For command details, readreferences/workflow.md. - Run or inspect analysis, then read generated artifacts before summarizing. For artifact priority and output rules, read
references/artifacts.md. - If tools, subtitles, OCR, downloads, or long-running processes fail, read
references/troubleshooting.md. - For 总结/分析/看懂/讲了什么 requests, when
report.mdexists, you must write final understanding into## 视频内容总结unless the user explicitly asks not to write files. You may usescripts/update_report_summary.py.
Evidence Rules
- Do not summarize from the video URL, title, description, search results, or same-topic materials.
- If video/transcript/keyframe evidence cannot be produced, stop and report the blocker.
- Do not open browser UI; let the CLI read configured browser cookies when
yt-dlpneeds them. - Prefer platform subtitles; otherwise let the CLI use system
whisperor auto-prepare localwhisper.cppunless disabled. - Use keyframes to verify slides, code, diagrams, on-screen text, and visual context.
- Treat remote MP4 downloads as temporary; they are deleted after analysis unless the user asks to keep them. Never delete local source videos.
- Mark uncertain transcription, OCR, names, dates, and technical terms as needing confirmation.
- Keep summaries concise, structured, and grounded in visible/transcribed evidence.
Quick Reference
| Task | Read or run |
|---|---|
| New video analysis | references/workflow.md |
| Existing analysis directory | references/artifacts.md |
| No subtitles or bad transcript | references/troubleshooting.md |
| Write summary into report | scripts/update_report_summary.py |
Common Mistakes
- Stopping after
analyzewithout reading the evidence files. - Treating noisy ASR text as exact quotes without caveats.
- Leaving a summary/analysis answer only in chat when
report.mdexists. - Running OCR by default; enable only when visual text matters.
What ships with it: 52 files
253.6 KB alongside SKILL.md, 30 of them executable
agents/
- openai.yaml211 B
docs/
- ARCHITECTURE.md5.2 KB
- OPERATIONS.md7.7 KB
- PROMOTION.md8.6 KB
- PUBLISHING.md2.3 KB
evals/
- skill_scenarios.md12.9 KB
examples/
references/
- artifacts.md5.1 KB
- troubleshooting.md3.5 KB
- workflow.md5.8 KB
scripts/
- update_report_summary.pyruns2.5 KB
tests/
- fixtures/douyin_share_router_data.html656 B
- test_analyzer.pyruns9.9 KB
- test_cli.pyruns9.2 KB
- test_downloader.pyruns10.0 KB
- test_keyframes.pyruns2.0 KB
- test_media.pyruns2.2 KB
- test_ocr.pyruns2.1 KB
- test_processes.pyruns3.7 KB
- test_reporting.pyruns8.7 KB
- test_skill_docs.pyruns2.9 KB
- test_sources.pyruns1.0 KB
- test_subtitles.pyruns1.3 KB
- test_summarizer.pyruns8.4 KB
- test_transcription.pyruns8.5 KB
watchvideo/
- analyzer.pyruns10.8 KB
- cli.pyruns7.5 KB
- commands.pyruns2.0 KB
- downloader.pyruns16.0 KB
- .gitignore594 B
- LICENSE1.1 KB
- pyproject.toml293 B
- README.md11.5 KB
- README.zh-CN.md8.4 KB
12 more files not listed here. See all 52 in the repository.