youtube-transcript

Extract YouTube transcripts and metadata into Markdown for Obsidian.

3|Updated Feb 6, 2026
One-click install
npx skills add https://github.com/pinion05/skills --skill youtube-transcript-pinion05
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: youtube-transcript
Source: https://github.com/pinion05/skills/tree/main/youtube-transcript
Command: npx skills add https://github.com/pinion05/skills --skill youtube-transcript-pinion05

SYSTEM DOCUMENTATION & REQUIREMENTS

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

What problem does it solve?

This Skill automates the extraction of YouTube transcripts and video metadata and formats them into Markdown suitable for import into Obsidian.

Core Features & Use Cases

  • Reliable transcript extraction using the youtube-transcript-api to avoid HTTP 429 errors and enable language prioritization.
  • Output includes comprehensive YAML frontmatter (title, channel, url, upload_date, duration, description, tags, view_count, like_count) and a structured transcript organized by chapters when available.
  • Deduplication of overlapping auto-generated subtitles and grouping by chapters to improve readability.
  • Saves to the local Obsidian vault at ~/Brains/brain/ with a sanitized filename derived from the video title.

Quick Start

To extract transcripts for a YouTube video, run:

  • python scripts/extract_transcript.py <youtube_url> Optional: specify a custom output filename:
  • python scripts/extract_transcript.py <youtube_url> custom_filename.md

Frequently Asked Questions about youtube-transcript

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

FAQPage Schema
How do I extract YouTube transcripts as Markdown for Obsidian?

You can extract YouTube transcripts as Markdown by running a Python script that fetches subtitles and video metadata, formatting the output with YAML frontmatter and chapter grouping directly into an Obsidian vault.

How do I deduplicate overlapping auto-generated YouTube subtitles?

Deduplicating overlapping auto-generated YouTube subtitles is handled automatically by the extraction script, which cleans up repeated segments to improve readability before formatting the text into Markdown.

Can I prioritize specific languages when extracting YouTube transcripts?

Yes, you can prioritize specific languages when extracting YouTube transcripts; the script supports language-prioritized fetching for Korean, English, and Japanese to ensure you get the correct subtitle track.

Do I need yt-dlp to extract YouTube video metadata and subtitles?

Yes, you need yt-dlp to extract YouTube video metadata like upload date and view count, while the youtube-transcript-api handles fetching the subtitles without downloading any video or audio files.

Why does my YouTube transcript extraction fail with HTTP 429 errors?

YouTube transcript extraction often fails with HTTP 429 errors due to rate limiting, but using the youtube-transcript-api provides a reliable extraction method designed to avoid these errors.

Does this YouTube transcript extraction method download video or audio files?

No, this YouTube transcript extraction method never downloads video or audio files; it relies solely on the youtube-transcript-api and yt-dlp to fetch text subtitles and metadata directly.