skills/yt-transcript/SKILL.md
Fetch transcripts from YouTube videos. Use when user asks to get, download, extract, or retrieve YouTube video transcripts, captions, or subtitles. Also activates for video content analysis, summarizing YouTube videos, or processing video content.
npx skillsauth add nibzard/skills-kit yt-transcriptInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Fetch transcripts from YouTube videos for analysis, summarization, or content processing.
This skill automatically activates when:
The skill requires youtube-transcript-api to be installed:
pip install youtube-transcript-api
Or with uv:
uv pip install youtube-transcript-api
Fetch a single transcript (outputs to stdout):
python ${CLAUDE_PLUGIN_ROOT}/scripts/get_transcript.py "https://youtu.be/dQw4w9WgXcQ"
Save to file:
python ${CLAUDE_PLUGIN_ROOT}/scripts/get_transcript.py "https://youtu.be/dQw4w9WgXcQ" --output transcript.txt
Fetch multiple videos:
python ${CLAUDE_PLUGIN_ROOT}/scripts/get_transcript.py \
"https://youtu.be/VIDEO_ID_1" \
"https://youtu.be/VIDEO_ID_2" \
--output transcripts.txt
Get transcript without timestamps:
python ${CLAUDE_PLUGIN_ROOT}/scripts/get_transcript.py "https://youtu.be/dQw4w9WgXcQ" --no-timestamps
The skill handles various YouTube URL formats:
https://youtu.be/dQw4w9WgXcQhttps://www.youtube.com/watch?v=dQw4w9WgXcQhttps://www.youtube.com/embed/dQw4w9WgXcQdQw4w9WgXcQhttps://youtu.be/dQw4w9WgXcQ?si=abcd1234Default output includes timestamps:
# Transcript for https://youtu.be/dQw4w9WgXcQ (Video ID: dQw4w9WgXcQ)
0.00 First line of the transcript
2.50 Second line of the transcript
5.00 Third line of the transcript
Without --no-timestamps flag, plain text output:
# Transcript for https://youtu.be/dQw4w9WgXcQ (Video ID: dQw4w9WgXcQ)
First line of the transcript
Second line of the transcript
Third line of the transcript
# Fetch transcript
python ${CLAUDE_PLUGIN_ROOT}/scripts/get_transcript.py "https://youtu.be/VIDEO_ID" --output video.txt
# Now Claude can read and analyze the content
# Fetch all transcripts to one file
python ${CLAUDE_PLUGIN_ROOT}/scripts/get_transcript.py \
"https://youtu.be/VIDEO1" \
"https://youtu.be/VIDEO2" \
"https://youtu.be/VIDEO3" \
--output all_transcripts.txt
# Get clean text without timestamps for easier processing
python ${CLAUDE_PLUGIN_ROOT}/scripts/get_transcript.py "https://youtu.be/VIDEO_ID" --no-timestamps > clean.txt
Some videos don't have transcripts available. The script will report:
Error: Could not fetch transcript for: <url>
This can happen when:
YouTube auto-generates transcripts for many videos, but not all. If a video has no manual captions and no auto-generated captions, the transcript won't be available.
For bulk operations, you may encounter rate limiting. The script fetches one transcript at a time to minimize issues.
youtube-transcript-api packageusage: get_transcript.py [-h] [-o OUTPUT] [--no-timestamps] urls [urls ...]
positional arguments:
urls YouTube video URL(s)
options:
-h, --help show this help message and exit
-o OUTPUT, --output OUTPUT
Output file (default: stdout)
--no-timestamps Exclude timestamps from output
python ${CLAUDE_PLUGIN_ROOT}/scripts/get_transcript.py "https://www.youtube.com/watch?v=tgbNymZ7vqY" --output talk.txt
python ${CLAUDE_PLUGIN_ROOT}/scripts/get_transcript.py "https://youtu.be/VIDEO_ID" --no-timestamps > summary_input.txt
# Build URLs from a list of video IDs
for vid in VIDEO_ID1 VIDEO_ID2 VIDEO_ID3; do
python ${CLAUDE_PLUGIN_ROOT}/scripts/get_transcript.py "https://youtu.be/${vid}" --output "transcript_${vid}.txt"
done
tools
Use tmux to run and test our interactive CLI/TUI end-to-end. Includes how to start, send keys, capture output, and cleanly stop (double Ctrl+C).
development
Create new Agent Skills interactively or from templates. Use when user wants to create, generate, scaffold, or build a new skill, or mentions creating skills, writing skills, skill templates, skill development.
development
Universal release workflow: detect project type, init versioning if needed, run tests, bump version, tag, push, and create GitHub release. Works with Python, Go, Node.js, Rust, Java, .NET, Ruby, PHP, and multi-language projects.
tools
AI-Powered Security Testing Toolkit - Professional penetration testing scripts for discovering vulnerabilities, analyzing application structure, and generating context-aware security tests. All scripts return structured JSON for agent consumption.