youtube
Skill107 starsChanged 5 months agoMITView on GitHub
Work with YouTube content end to end — fetch transcripts and turn them into summaries, blog posts, social content, quotes, or show notes; create high-CTR thumbnails (with the user's face from an upload), clone the style of top-ranking thumbnails; and produce SEO-optimised titles + descriptions. Use when the user pastes a YouTube URL, wants to repurpose video content, research competitor videos, make or refresh a thumbnail, or package a video for upload.
We split this skill into the rules it gives an agent
8 rules. 0 are common, 2 are distinctive, and 6 are very specific to this project.
0
Common
Most of the 28 edited versions we read keep these.
2
Distinctive
This author's own choices. Worth a look.
6
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Very specific: line 54
If youtube_video_transcripts_fetch is not found, the toolkit to enable is YouTube (youtube_toolkit).
- Distinctive: line 58
Every tool in this skill is named by its canonical tool name.
- Very specific: line 66
If a tool is not found: in Hyper chat, find its toolkit id with discover_toolkits and pass it to enable_toolkit.
- Very specific: line 75
Default: start with
youtube_video_transcripts_fetch: Use youtube_videos_read when you need something the raw text can't give you (e.g. - Distinctive: line 81
Don't fabricate transcript content: Always fetch before summarizing.
- Very specific: line 110
Use text for most tasks. Use segments when you need timestamps (e.g.
- Very specific: line 152
Read the returned text
- Very specific: line 166
Run scripts/clone_top_thumbnail_style.py with query="AI agents" and the user's topic
“Common” is measured: kept by at least 6 in 10 of the 28 edited versions of this file we could read. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
YouTube
Fetch the full transcript of any YouTube video and turn it into whatever the user needs — summaries, blog posts, social content, quotes, show notes, or raw text. Then package videos for upload: high-CTR thumbnails, SEO titles, and descriptions.
Routing
| User intent | Where to go |
| Transcript, summary, repurposing, quotes, chapters | This guide (below) |
| Thumbnails, style cloning, SEO titles/descriptions | references/thumbnails.md |
Requirements
- Hyper MCP installed. https://app.hyperfx.ai/mcp
- Sandbox text workflows: require
ai_functions_runin the connected catalog and the sandbox toolkit. These scripts run inline LLM calls through the sandbox tool bridge. - YouTube toolkit enabled at https://app.hyperfx.ai/apps — provides
youtube_video_transcripts_fetchandyoutube_videos_read. - Thumbnail workflows additionally need the image generation and sandbox toolkits.
If youtube_video_transcripts_fetch is not found, the toolkit to enable is YouTube (youtube_toolkit).
How to run the tools in this skill
Every tool in this skill is named by its canonical tool name. Run it with the call your surface gives you:
| Surface | Find a tool | Run it |
| Hyper chat | Call the tool by its name; search_tools(queries=["<provider> <action>"]) shows its parameters | <name>(...) |
| MCP client (Claude, Cursor, Codex, ChatGPT) | search("<what you want to do>"), then describe("<name>") | call_read("<name>", {...}), call_write or call_destructive: the one that describe names in call_with |
| Hyper CLI | hyperai search "<what you want to do>", then hyperai describe <name> | hyperai call <name> --json '{...}' |
If a tool is not found: in Hyper chat, find its toolkit id with discover_toolkits and pass it to enable_toolkit. On an MCP client or the CLI, tell the user which integration to connect in Hyper.
Two tools — pick the right one
| Tool | When to use | Returns |
youtube_video_transcripts_fetch | You need the raw transcript text or timestamped segments. Fast, reliable, always get this first. | Full text string + segments with start/duration timestamps |
youtube_videos_read | You need AI-powered extraction from the video — summaries, Q&A, topic segmentation, translation, visual descriptions. | Free-form answer to your instruction |
Default: start with youtube_video_transcripts_fetch. Use youtube_videos_read when you need something the raw text can't give you (e.g. visual descriptions, translation, or a structured extraction from a very long video).
Critical rules
youtube_video_transcripts_fetchtakes 15–30 seconds. It spins up an isolated sandbox. Tell the user it's running and to expect a short wait — don't make them think it's stuck.- Both video IDs and full URLs are accepted.
"NZLAdOL9fP8"and"https://www.youtube.com/watch?v=NZLAdOL9fP8"both work. - Don't fabricate transcript content. Always fetch before summarizing. Never rely on training knowledge about what a specific video says.
- Very long videos (>2 hours):
youtube_video_transcripts_fetchhandles these fine. Only useyoutube_videos_readon long videos if you specifically need AI-powered extraction — it can hit token limits on very long content. - No transcript available: Some videos have transcripts disabled. If
youtube_video_transcripts_fetchfails, tryyoutube_videos_readas a fallback — it uses a different extraction method.
Fetching the transcript
youtube_video_transcripts_fetch(
video_id_or_url="https://www.youtube.com/watch?v=NZLAdOL9fP8",
language="en" # optional — omit to auto-detect
)Response structure:
{
"success": true,
"video_id": "NZLAdOL9fP8",
"language": "English (auto-generated)",
"text": "Full transcript as one string...",
"segments": [
{ "text": "This week we launched Hyper MCP.", "start": 0.0, "duration": 3.2 },
{ "text": "It brings Hyper's built-in tools...", "start": 3.2, "duration": 4.1 }
],
"total_duration": 342.0
}Use text for most tasks. Use segments when you need timestamps (e.g. chapters, clip references, karaoke captions).
Using youtube_videos_read for AI-powered extraction
youtube_videos_read(
url="https://www.youtube.com/watch?v=NZLAdOL9fP8",
instruction="Summarize the key points. Then list the main features demonstrated, with timestamps."
)Good instruction examples:
"Extract every claim made about pricing or cost.""List the action items mentioned, in order.""Translate this to Spanish.""What tools or products does the speaker mention by name?""Identify the main sections of this video and give me a timestamp for each."
What to do with the transcript
Once you have the text, ask the user what they need — or infer it from context:
| What the user wants | What to produce |
| Blog post | Restructure the transcript into intro → sections → CTA. Clean up filler words. Add subheadings. |
| LinkedIn / Twitter post | Extract the 1–2 sharpest insights. Rewrite in first person if it's the user's own video. |
| Summary | 3–5 bullet points of key takeaways. |
| Show notes / description | Title, 2-sentence summary, timestamped chapters, links mentioned. |
| Quote extraction | Pull verbatim quotes with start timestamps from the segments array. |
| Repurpose for email | Rewrite as a narrative email — opening hook, key insight, CTA. |
| Research / competitive analysis | Summarize what the speaker claims, what products they recommend, and what pain points they describe. |
Thumbnails and SEO packaging
For making or refreshing thumbnails, cloning the style of top-ranking thumbnails, adding the user's face, and generating SEO titles/descriptions, read references/thumbnails.md. Every thumbnail workflow is a sandbox script under scripts/ (generate_thumbnail.py, research_top_thumbnails.py, clone_top_thumbnail_style.py) — the reference doc is the routing table and the rules for using them.
Example outputs
Input: "Get the transcript of https://www.youtube.com/watch?v=NZLAdOL9fP8 and write a LinkedIn post from it"
Flow:
- Call
youtube_video_transcripts_fetch(video_id_or_url="https://www.youtube.com/watch?v=NZLAdOL9fP8") - Read the returned
text - Identify the 1–2 sharpest moments — what's surprising, useful, or quotable
- Draft a LinkedIn post in the speaker's voice (first person) with a hook and a clear point
Input: "Summarize this video for me: [URL]"
Flow:
- Call
youtube_video_transcripts_fetch(video_id_or_url="[URL]") - Return 4–6 bullet points of key takeaways, without padding or filler
Input: "Make me a thumbnail like the top videos for 'AI agents'"
Flow:
- Read
references/thumbnails.md - Run
scripts/clone_top_thumbnail_style.pywithquery="AI agents"and the user's topic - Show the top thumbnails, let the user pick a rank, re-run with
chosen_rankto generate
Related skills
| When to hand off | Skill |
| Mining comments from YouTube videos for customer research | customer-research |
| Finding top YouTube videos by topic | Use youtube_videos_search_top directly |
| Generating video content | video-generation |
For title options, descriptions and thumbnail concepts, run generate_seo_titles.py, generate_seo_description.py and analyze_thumbnail_concepts.py under scripts/. They call ai_functions_run from the sandbox using fetched transcript and video context. Follow the output contracts in references/packaging-schemas.json; the thumbnail reference explains the workflow.
Other versions35 projects use a version of this.
Word for word · 0
None found.
Edited · 0
None found.
Wrote their own version · 35
- eat-pray-ai/yutu★ 712same name
- sigcli/sigcli★ 293same name
- refly-ai/refly-skills★ 203same name
- adityaarsharma/youtube-marketing-skills★ 58same name
- oakreader/oakreader★ 46same name
- ericmjl/skills★ 41same name
- tuan3w/obsidian-vault-agent★ 39same name
- s-choung/Research-Skills★ 36same name
- analystacademy/claude-skills★ 35same name
- tubeagentkit/youtube-mcp★ 24same name
25 more not listed
How matches are found. Word for word: the exact same text. Edited: shares passages with this file (“99% same” means 99% of its five-word phrases also appear here; 10% or more counts). Their own version: similar meaning, or, weakest, the same name. We can’t tell which project had it first. Projects are counted among the 200 most-starred candidates, and mentions are links to the repository we found, up to 50 per site, so both counts are a floor.
Used alongsideProjects with it also use content and skill-creator.
Other files people use alongside this one.
Files found in the same public projects as a version of this one, more often than they turn up anywhere else. Each project counts once, large collections count for less, and this file's own repository is left out.
Rayan55050Skillcontent
Создание контента: посты, статьи, тексты
Also in 3 projects that use this
SentrySkillskill-creator
Create new agent skills following the Agent Skills specification. Use when asked to "create a skill", "add a new skill", "write a skill", "make a skill", "build a skill", or scaffold a new skill with SKILL.md. Guides through requirements, writing, registration, and verification.
Also in 3 projects that use this
In this repository31 other files it gives its agents.
- AGENTS.mdAGENTS.md
- CLAUDE.mdCLAUDE.md
- ad-creative-generationSkill
- amazon-adsSkill
- analytics-insightsSkill
- blog-generationSkill
- brand-contextSkill
- cold-email-outreachSkill
- competitor-intelSkill
- customer-researchSkill
- email-lifecycleSkill
- gmailSkill
- google-adsSkill
- google-sheetsSkill
- hyper-cliSkill
- image-generationSkill
- instagramSkill
- linkedinSkill
- meta-ads-librarySkill
- meta-adsSkill
- openai-adsSkill
- pinterest-adsSkill
- reddit-adsSkill
- redditSkill
- seo-researchSkill
- slackSkill
- snapchat-adsSkill
- tiktok-adsSkill
- tiktokSkill
- twilioSkill
- video-generationSkill
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
No reviews yet
People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.
- It worked
- Partly
- It didn't
Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

