Media & StreamingDocumentedScanned

video-transcript-downloader

Download videos, audio, subtitles, and clean paragraph-style transcripts from YouTube.

Share:

Installation

npx clawhub@latest install video-transcript-downloader

View the full skill documentation and source below.

Documentation

Video Transcript Downloader

./scripts/vtd.js can:

  • Print a transcript as a clean paragraph (timestamps optional).

  • Download video/audio/subtitles.


Transcript behavior:
  • YouTube: fetch via youtube-transcript-plus when possible.

  • Otherwise: pull subtitles via yt-dlp, then clean into a paragraph.


Setup

cd ~/Projects/agent-scripts/skills/video-transcript-downloader && npm ci

Transcript (default: clean paragraph)

./scripts/vtd.js transcript --url ''
./scripts/vtd.js transcript --url '' --lang en
./scripts/vtd.js transcript --url '' --timestamps
./scripts/vtd.js transcript --url '' --keep-brackets

Download video / audio / subtitles

./scripts/vtd.js download --url '' --output-dir ~/Downloads
./scripts/vtd.js audio --url '' --output-dir ~/Downloads
./scripts/vtd.js subs --url '' --output-dir ~/Downloads --lang en

Formats (list + choose)

List available formats (format ids, resolution, container, audio-only, etc):

./scripts/vtd.js formats --url ''

Download a specific format id (example):

./scripts/vtd.js download --url '' --output-dir ~/Downloads -- --format 137+140

Prefer MP4 container without re-encoding (remux when possible):

./scripts/vtd.js download --url '' --output-dir ~/Downloads -- --remux-video mp4

Notes

  • Default transcript output is a single paragraph. Use --timestamps only when asked.
  • Bracketed cues like [Music] are stripped by default; keep them via --keep-brackets.
  • Pass extra yt-dlp args after -- for transcript fallback, download, audio, subs, formats.
./scripts/vtd.js formats --url '' -- -v

Troubleshooting (only when needed)

  • Missing yt-dlp / ffmpeg:
brew install yt-dlp ffmpeg
  • Verify:
yt-dlp --version
ffmpeg -version | head -n 1