video-transcript-downloader

Download transcripts and subtitles from YouTube via yt-dlp in Node.js.

1|Updated Jan 27, 2026
One-click install
npx skills add https://github.com/devskale/skale-skills --skill video-transcript-downloader
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: video-transcript-downloader
Source: https://github.com/devskale/skale-skills/tree/main/skills/video-transcript-downloader
Command: npx skills add https://github.com/devskale/skale-skills --skill video-transcript-downloader

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill requires youtube-transcript-plus, and includes scripts (resource) components.

What problem does it solve?

This Skill automates obtaining transcripts, subtitles, and audio extraction from YouTube and other yt-dlp supported sites, saving transcripts to file by default. Use when you need to convert video content into readable, searchable text for documentation, indexing, or archival purposes.

Core Features & Use Cases

  • Transcript extraction: Fetch transcripts for YouTube videos via youtube-transcript-plus when available, with language selection.
  • Fallback + Subtitles: Fall back to yt-dlp subtitles when direct transcripts are unavailable and also support downloading subtitles or audio.
  • Export & Metadata: Save transcripts as Markdown files with video metadata frontmatter including title, date, id, uploader, views, and duration; supports saving to file or printing to stdout.
  • Use Case: Create searchable documentation from a lecture video by generating a clean, paragraph transcript and attaching metadata for indexing.

Quick Start

Install dependencies with ./install.sh, then run the script to fetch a transcript:

  • Transcript: ./scripts/vtd.js transcript --url 'https://www.youtube.com/watch?v=...' --lang en
  • Subtitles: ./scripts/vtd.js subs --url 'https://www.youtube.com/watch?v=...' --lang en
  • Download: ./scripts/vtd.js download --url 'https://www.youtube.com/watch?v=...' --output-dir ~/Downloads

Frequently Asked Questions about video-transcript-downloader

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I download transcripts from YouTube videos?

Download transcripts from YouTube by running the transcript command with a video URL and language preference. The Skill fetches transcripts via youtube-transcript-plus when available, falls back to yt-dlp subtitles if needed, and saves output as Markdown files with video metadata including title, date, uploader, views, and duration.

Can I extract transcripts from sites other than YouTube?

Yes. This Skill supports any site that yt-dlp handles, not just YouTube. It uses yt-dlp as a fallback mechanism to retrieve subtitles and transcripts from compatible platforms, extending beyond YouTube's native transcript availability.

What's the best way to convert video content into searchable text for documentation?

Generate timestamped transcripts with video metadata by using this Skill to extract and save transcripts as Markdown. The output includes clean paragraphs, language selection, and frontmatter with indexable metadata, making video content instantly searchable and archivable for documentation workflows.

Do I need to install yt-dlp separately to use this Skill?

No. The Skill includes an install script (./install.sh) that handles dependency setup, including yt-dlp and youtube-transcript-plus. Run the installation once before executing transcript, subtitle, or download commands.

Can I download subtitles and audio in addition to transcripts?

Yes. The Skill supports three operations: transcript extraction, subtitle download via the subs command, and full audio/video download via the download command. All support language selection and file output to your specified directory.

What happens if a YouTube video doesn't have a native transcript available?

The Skill automatically falls back to yt-dlp subtitles when direct transcripts are unavailable. This ensures transcript extraction succeeds even for videos without creator-provided captions, using generated or external subtitle sources instead.