소스 정보
- 저장소
- lefant/agent-skills
- 최근 소스 활동
- 2026년 2월 4일 10:28
- 감지된 SKILL.md 언어
- 영어
- 스타
- 1
- 포크
- 1
설치 방법
기본적으로 소스를 먼저 확인하는 Prompt가 선택됩니다. 직접 명령으로 전환하거나 로컬 사본을 다운로드할 수도 있습니다.
소스 파일 검토
설치 여부를 결정하기 전에 SKILL.md와 SkillsMP에 표시된 보조 파일을 읽어 보세요.
메뉴
기본적으로 소스를 먼저 확인하는 Prompt가 선택됩니다. 직접 명령으로 전환하거나 로컬 사본을 다운로드할 수도 있습니다.
설치 여부를 결정하기 전에 SKILL.md와 SkillsMP에 표시된 보조 파일을 읽어 보세요.
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
직접 명령은 검토 Prompt를 거치지 않습니다. 실행하기 전에 소스를 확인하세요.
npx skills add https://github.com/lefant/agent-skills --skill youtube-transcript명령은 한 줄로 유지됩니다. 복사하기 전에 가로로 스크롤해 전체 내용을 확인하세요.
로컬 사본을 원하시나요? SkillsMP에서 현재 제공할 수 있는 파일을 다운로드하세요.
SOC 직업 분류 기준
SKILL.md 표시 중
| name | youtube-transcript |
| description | Fetch YouTube video transcripts using uvx and youtube-transcript-api |
| invocationPattern | when user provides a YouTube URL or asks to get/fetch a YouTube transcript |
Fetch transcripts from YouTube videos for analysis, note-taking, research, or content extraction. Uses uvx to run youtube-transcript-api without requiring installation.
Call this skill when:
https://www.youtube.com/watch?v=VIDEO_ID)Basic usage:
# From full URL
uvx --from youtube-transcript-api youtube_transcript_api VIDEO_ID --format text
# Extract video ID from URL
# https://www.youtube.com/watch?v=LvLdNkgO-N0 → LvLdNkgO-N0
Output formats:
--format text - Plain text (recommended for reading/analysis)--format json - JSON with timestamps--format srt - SubRip subtitle format--format vtt - WebVTT subtitle formatLanguage selection:
# Specific language
uvx --from youtube-transcript-api youtube_transcript_api VIDEO_ID --languages en --format text
# Multiple language preferences
uvx --from youtube-transcript-api youtube_transcript_api VIDEO_ID --languages en,es,fr --format text
YouTube URLs come in various formats:
| Format | Example | Video ID |
|---|---|---|
| Standard | https://www.youtube.com/watch?v=LvLdNkgO-N0 | LvLdNkgO-N0 |
| Short | https://youtu.be/LvLdNkgO-N0 | LvLdNkgO-N0 |
| Embed | https://www.youtube.com/embed/LvLdNkgO-N0 | LvLdNkgO-N0 |
| Mobile | https://m.youtube.com/watch?v=LvLdNkgO-N0 | LvLdNkgO-N0 |
Extract video ID with bash:
# From standard URL
echo "https://www.youtube.com/watch?v=LvLdNkgO-N0" | grep -oP '(?<=v=)[^&]*'
# From short URL
echo "https://youtu.be/LvLdNkgO-N0" | grep -oP '(?<=youtu.be/)[^?]*'
# Universal (works for most formats)
echo "URL" | sed -E 's/.*[?&v=|youtu.be\/]([a-zA-Z0-9_-]{11}).*/\1/'
Transcripts can be saved to appropriate vault locations based on use case:
| Use Case | Location | Example |
|---|---|---|
| Research material | 3-resources/transcripts/ | 3-resources/transcripts/youtube-VIDEOID-title.md |
| Project reference | 1-projects/PROJECT/references/ | 1-projects/my-project/references/video-transcript.md |
| Area knowledge | 2-areas/AREA/references/ | 2-areas/development/references/claude-code-tutorial.md |
| Archived content | 4-archives/transcripts/ | 4-archives/transcripts/2026-01-old-tutorial.md |
Naming convention:
youtube-[video-id]-brief-description.md
Examples:
youtube-LvLdNkgO-N0-claude-code-advanced-techniques.mdyoutube-dQw4w9WgXcQ-rickroll.mdWhen invoked:
Parse the provided URL to extract the 11-character video ID:
VIDEO_ID=$(echo "$URL" | sed -E 's/.*[?&v=|youtu.be\/]([a-zA-Z0-9_-]{11}).*/\1/')
Use uvx to fetch the transcript without installation:
uvx --from youtube-transcript-api youtube_transcript_api "$VIDEO_ID" --format text
The output may be large (>50KB). Common approaches:
Option A: Display excerpt Show first ~2000 characters and ask if user wants it saved
Option B: Save directly If user asked to "save" or "create note", save to appropriate location
Option C: Summarize If user asked for summary, use the transcript as context for analysis
# Save with proper naming
OUTPUT_FILE="3-resources/transcripts/youtube-${VIDEO_ID}-${BRIEF_TITLE}.md"
# Add frontmatter
cat > "$OUTPUT_FILE" <<EOF
---
source: https://www.youtube.com/watch?v=${VIDEO_ID}
fetched: $(date +%Y-%m-%d)
type: youtube-transcript
---
# ${VIDEO_TITLE}
${TRANSCRIPT_CONTENT}
EOF
Common errors and solutions:
| Error | Cause | Solution |
|---|---|---|
| "Subtitles are disabled" | Video has no transcript | Inform user, suggest alternatives |
| "Video unavailable" | Invalid ID or region lock | Verify URL/ID |
| "Could not retrieve transcript" | Language mismatch | Try --languages en,auto |
# 1. User provides URL
URL="https://www.youtube.com/watch?v=LvLdNkgO-N0"
# 2. Extract video ID
VIDEO_ID=$(echo "$URL" | sed -E 's/.*[?&v=|youtu.be\/]([a-zA-Z0-9_-]{11}).*/\1/')
# 3. Fetch transcript
TRANSCRIPT=$(uvx --from youtube-transcript-api youtube_transcript_api "$VIDEO_ID" --format text)
# 4. Save to vault
cat > "3-resources/transcripts/youtube-${VIDEO_ID}-how-i-ai-claude-code.md" <<EOF
---
source: https://www.youtube.com/watch?v=${VIDEO_ID}
fetched: $(date +%Y-%m-%d)
type: youtube-transcript
title: "How I AI - Advanced Claude Code Techniques"
---
# How I AI - Advanced Claude Code Techniques with John Lindquist
${TRANSCRIPT}
EOF
Use JSON format to preserve timestamps for detailed analysis:
uvx --from youtube-transcript-api youtube_transcript_api VIDEO_ID --format json | jq -r '.[] | "[\(.start | floor)]s: \(.text)"'
Process multiple videos:
for video_id in VIDEO_ID1 VIDEO_ID2 VIDEO_ID3; do
uvx --from youtube-transcript-api youtube_transcript_api "$video_id" --format text > "transcript-${video_id}.txt"
done
List available languages:
uvx --from youtube-transcript-api youtube_transcript_api VIDEO_ID --list-transcripts
uvx yt-dlp)This skill complements other research and documentation workflows:
This skill activates when: