@554/youtube-summary
SKILL.md
YouTube Summary Skill
Summarize any YouTube video by fetching its transcript via Supadata API and generating a structured, readable summary.
Prerequisites
This skill requires a Supadata API key. The free tier is sufficient for personal use.
- Sign up at supadata.ai
- Get your API key from the dashboard
- Set it as an environment variable:
Or provide it directly when prompted.SUPADATA_API_KEY=sd_your_key_here
Workflow
Step 1: Get the YouTube URL
Accept any of these formats:
https://youtu.be/VIDEO_IDhttps://www.youtube.com/watch?v=VIDEO_ID
Step 2: Fetch transcript via Supadata API
curl -s "https://api.supadata.ai/v1/youtube/transcript?url=VIDEO_URL" \
-H "x-api-key: $SUPADATA_API_KEY"
Response format:
{
"content": [
{"text": "...", "offset": 0, "duration": 5000, "lang": "en"},
...
],
"lang": "en",
"availableLangs": ["en"]
}
Extract the text fields and concatenate to get the full transcript.
Step 3: Generate summary
Use the transcript text to produce a structured summary with these sections (adapt based on video content):
- 🎯 核心主题 — What is the video about?
- 📌 主要观点 — Key arguments or findings (3–7 bullet points)
- 📖 详细内容 — Expanded breakdown by section/topic
- 💡 结论 — Main takeaways or conclusions
Adjust language of summary to match the user's language preference.
Error Handling
| Error | Cause | Resolution |
|---|---|---|
401 Unauthorized |
Invalid or missing API key | Ask user to check their Supadata API key |
404 Not Found |
Video has no transcript / is private | Inform user the video has no available transcript |
429 Rate Limited |
Too many requests | Wait and retry, or upgrade Supadata plan |
Empty content array |
No captions available | Inform user and suggest they check if the video has captions |
Example Usage
User: "帮我总结一下这个视频 https://youtu.be/BU9sIfGVhIQ"
Agent workflow:
- Call Supadata API with the URL
- Parse and concatenate transcript text
- Generate structured summary in Chinese (matching user language)
- Present summary with emoji section headers
Notes
- Supadata free tier has a monthly quota — sufficient for casual use
- Videos without auto-generated or manual captions cannot be transcribed
- For non-English videos, Supadata returns the transcript in the original language; summarize accordingly
- Do NOT use
youtube-transcript-apiPython library oryt-dlp— cloud server IPs are blocked by YouTube. Always use Supadata API.