video-watcher
// Fetch and read transcripts from YouTube and Bilibili videos. Use when you need to summarize a video, answer questions about its content, or extract information from it.
$ git log --oneline --stat
stars:1,933
forks:367
updated:March 4, 2026
SKILL.mdreadonly
SKILL.md Frontmatter
namevideo-watcher
descriptionFetch and read transcripts from YouTube and Bilibili videos. Use when you need to summarize a video, answer questions about its content, or extract information from it.
authoradapted from youtube-watcher
version1.1.0
triggerswatch video,summarize video,video transcript,youtube summary,bilibili summary,analyze video
metadata[object Object]
Video Watcher
Fetch transcripts from YouTube and Bilibili videos to enable summarization, QA, and content extraction.
Supported Platforms
- ✅ YouTube (youtube.com, youtu.be)
- ✅ Bilibili (bilibili.com, b23.tv)
Usage
Get Transcript (Auto-detect Platform)
python3 {baseDir}/scripts/get_transcript.py "VIDEO_URL"
Specify Language
python3 {baseDir}/scripts/get_transcript.py "VIDEO_URL" --lang zh-CN
Examples
YouTube Video
python3 {baseDir}/scripts/get_transcript.py "https://www.youtube.com/watch?v=dQw4w9WgXcQ"
Bilibili Video
python3 {baseDir}/scripts/get_transcript.py "https://www.bilibili.com/video/BV1xx411c7mD"
With Custom Language
# Get English subtitles for a Bilibili video
python3 {baseDir}/scripts/get_transcript.py "https://bilibili.com/video/..." --lang en
# Get Chinese subtitles for a YouTube video
python3 {baseDir}/scripts/get_transcript.py "https://youtube.com/watch?v=..." --lang zh-CN
Default Languages
| Platform | Default Language |
|---|---|
| YouTube | en (English) |
| Bilibili | zh-CN (Chinese) |
Common Language Codes
en- Englishzh-CN- Simplified Chinese (简体中文)zh-TW- Traditional Chinese (繁體中文)ja- Japaneseko- Koreanes- Spanishfr- Frenchde- German
Notes
- Requires
yt-dlpto be installed and available in PATH - Works with videos that have closed captions (CC) or auto-generated subtitles
- Automatically detects platform from URL
- If no subtitles available, the script will fail with an error message
- yt-dlp natively supports both YouTube and Bilibili