YouTube Transcript
SkillFiles & storageExtracts YouTube video transcripts and saves them as structured markdown files with metadata and timestamped content. When a user shares a YouTube URL, IMMEDIATELY runs the extraction script, creates a local folder, and saves the transcript. Handles both manual and auto-generated captions.
Available today. Use it from your connected AI after setup.
No other account needed.
Connect ahel once, and every AI you use reads what you have installed.
Then ask your AI: use the YouTube Transcript skill
What this skill tells your AI
The instructions your AI receives, as published by elliotjlt/claude-skill-potions in skills/youtube-transcript/SKILL.md and read by ahel’s review.
When To Activate
Instructions
Step 1: Check yt-dlp
<check_dep>
yt-dlp must exist at /tmp/yt-dlp or on PATH.
If missing, install it:
curl -L https://github.com/yt-dlp/yt-dlp/releases/latest/download/yt-dlp_macos -o /tmp/yt-dlp && chmod +x /tmp/yt-dlp
</check_dep>
Step 2: Extract Transcript
Run the extraction script:
node <skill-path>/scripts/fetch-transcript.mjs "<youtube-url>"
The script outputs JSON with:
title,channel,url,duration,uploadDate,descriptionsegments— individual timestamped linesparagraphs— segments merged into ~30-second blocks for readability
Step 3: Save Output
<output_format> Create a folder and markdown file:
Folder: transcripts/ in the current working directory (create if needed)
Filename: YYYY-MM-DD-kebab-case-title.md
---
type: transcript
source: youtube
video_id: <id>
channel: <channel>
duration: <duration>
date_published: <upload-date>
date_extracted: <today>
url: <url>
---
# <Title>
**Channel:** <channel>
**Duration:** <duration>
**Published:** <upload-date>
**URL:** <url>
---
## Summary
<2-3 sentence overview of what this video covers and why it matters>
---
## Key Takeaways
### 1. <First key theme>
- Bullet points summarising the core argument
- Include specific claims, frameworks, or advice given
- Attribute to the speaker where relevant
### 2. <Second key theme>
...repeat for each major theme (typically 3-7 themes for a 30-60 min video)
---
## Full Transcript
[0:00] <Brief topic label>. First paragraph of merged text...
[4:30] <Brief topic label>. Second paragraph continues...
The transcript section should be the full paragraph-merged output from the script, with each timestamp block prefixed by a short topic label (2-5 words) for scannability. </output_format>
Step 4: Summarise
- Summary — 2-3 sentences on what the video covers
- Key Takeaways — grouped by theme, with specific claims and quotes
- Full Transcript — paragraph-merged with topic labels (kept as reference/source)
The summary and takeaways should be written in clean, scannable prose. Extract the actual insights — not just "they discussed X" but what they specifically said about X. If the video is relevant to a specific context (e.g., interview prep), add a relevance table mapping insights to actions.
Integration with Boulot Vault
When used inside the Boulot vault for job research:
- Save to
{user}/active/{company}/research/transcripts/if the video relates to an active application - Add a link to the transcript in the company's
research.md - Tag with relevant company/role context in frontmatter
NEVER
- Download the video itself — subtitles only
- Fabricate or hallucinate transcript content
- Skip saving to file — always persist the transcript
- Run without checking yt-dlp exists first
ALWAYS
- Use kebab-case lowercase filenames
- Include full YAML frontmatter
- Use the paragraph-merged format for readability (not raw segments)
- Include timestamps at paragraph boundaries
- Provide a content summary after extraction
Signals
- GitHub stars
- 62
- Forks
- 2
- Last commit
- Feb 2026
Advanced
- Catalog kind
- skill
- Gateway key
youtube-transcript-elliotjlt- Source
- github.com/elliotjlt/claude-skill-potions