From gtm-skills
Researches YouTube topics, analyzes competitor videos, deconstructs viral content, and queries the YouTube Data API v3 for stats, search, and channel info.
How this skill is triggered — by the user, by Claude, or both
Slash command
/gtm-skills:youtube-researchThis skill is limited to the following tools:
The summary Claude sees in its skill listing — used to decide when to auto-load this skill
Read bootstrap context before asking questions: `strategy/brand.md` for brand, audience, offer, channels, tools, constraints, and metrics; `about/me.md` for personal voice; `content/ideas.md` and `content/calendar.md` for content planning. Use legacy product-marketing context files only as fallback. Save generated drafts to `content/<platform>/drafts/YYYY-MM-DD_short-topic-slug.md`, and route d...
Read bootstrap context before asking questions: strategy/brand.md for brand, audience, offer, channels, tools, constraints, and metrics; about/me.md for personal voice; content/ideas.md and content/calendar.md for content planning. Use legacy product-marketing context files only as fallback. Save generated drafts to content/<platform>/drafts/YYYY-MM-DD_short-topic-slug.md, and route durable learnings back to strategy/brand.md, about/me.md, or content/ideas.md.
This skill is self-contained for its frontmatter scope: use its local instructions, references, scripts, and assets as the playbook; ask only for missing task-specific inputs; hand off to adjacent skills instead of expanding scope; and return an actionable artifact, decision, plan, draft, or diagnostic.
Three modes in one skill:
export YOUTUBE_API_KEY="your-api-key-here"
Important: When piping curl output, wrap the command in
bash -c '...'to preserve env vars:bash -c 'curl -s "https://..." -H "..." | jq .'
Search Videos:
bash -c 'curl -s "https://www.googleapis.com/youtube/v3/search?part=snippet&q=YOUR_QUERY&type=video&maxResults=10&order=viewCount&key=${YOUTUBE_API_KEY}"' | jq '.items[] | {videoId: .id.videoId, title: .snippet.title, channel: .snippet.channelTitle}'
Get Video Details (stats, duration):
bash -c 'curl -s "https://www.googleapis.com/youtube/v3/videos?part=snippet,statistics,contentDetails&id=VIDEO_ID&key=${YOUTUBE_API_KEY}"' | jq '.items[0] | {title: .snippet.title, views: .statistics.viewCount, likes: .statistics.likeCount, duration: .contentDetails.duration}'
Get Channel by Handle:
bash -c 'curl -s "https://www.googleapis.com/youtube/v3/channels?part=snippet,statistics&forHandle=@HANDLE&key=${YOUTUBE_API_KEY}"' | jq '.items[0] | {id: .id, title: .snippet.title, subscribers: .statistics.subscriberCount, videos: .statistics.videoCount}'
Get Video Comments:
bash -c 'curl -s "https://www.googleapis.com/youtube/v3/commentThreads?part=snippet&videoId=VIDEO_ID&maxResults=20&order=relevance&key=${YOUTUBE_API_KEY}"' | jq '.items[] | {author: .snippet.topLevelComment.snippet.authorDisplayName, text: .snippet.topLevelComment.snippet.textDisplay, likes: .snippet.topLevelComment.snippet.likeCount}'
Get Trending Videos:
bash -c 'curl -s "https://www.googleapis.com/youtube/v3/videos?part=snippet,statistics&chart=mostPopular®ionCode=US&maxResults=10&key=${YOUTUBE_API_KEY}"' | jq '.items[] | {title: .snippet.title, channel: .snippet.channelTitle, views: .statistics.viewCount}'
Quota: 10,000 units/day. Search = 100 units. Most others = 1 unit.
See YouTube Data API docs for full reference.
Conduct research before planning a new video. Focus on insights and big levers — not data dumping.
Step 0: Create research file
Save all research to: ./youtube/episode/[episode_number]_[topic_short_name]/research.md
If it already exists, read it and continue from where it left off.
Step 1: Understand the topic
Step 2: Research your own channel
Use the API to find related videos you've already published. Document:
Step 3: Competitor research
Search for 5–8 top videos on the topic. For each:
Step 4: Content gap analysis
Document:
Rating criteria:
# [Episode]: [Topic] - Research
## Episode Overview
**Topic**: [Brief description]
**Target Audience**: [Who this is for]
**Goal**: [What viewers will learn/gain]
## YouTube Research
### Your Previous Videos
[Related videos with metrics]
### Top Competing Videos
[5-8 videos: title, channel, views, angle, what works]
### Key Insights
[Patterns and findings synthesized]
## Content Gap Analysis
### What's Already Well-Covered
[List]
### Content Gaps (Opportunities)
[Rated list with ⭐ ratings]
### Recommended Focus
[Specific angle and unique value proposition]
## Production Notes
**Status**: Research Complete
**Created**: [Date]
If the host environment supports parallel research, split focused tasks such as competitor search, own-channel review, and comment mining. Otherwise, do them sequentially and synthesize findings after each section.
Next step: Use youtube-content skill to plan the video based on this research.
Forensic deconstruction of video transcripts to extract viral formulas, hooks, and retention mechanics.
Auto-fetch:
python skills/youtube-research/scripts/fetch_transcript.py "YOUTUBE_URL_OR_VIDEO_ID"
Manual paste: YouTube's built-in transcript (click "..." → "Show transcript") or ytscribe.ai.
Approach the transcript like a crime scene — extract everything systematically. See reference/analysis-framework.md for the full checklist and templates.
Analyze these 11 dimensions:
Structure output with all 11 sections. End with a Quick Reference Cheatsheet — one-page summary of all extracted patterns for rapid implementation.
bash -c 'curl ...' with $YOUTUBE_API_KEYmcp__plugin_yt-content-strategist_youtube-analytics__search_videos, get_video_details, get_channel_detailsWebSearch and WebFetch for industry trends and contextnpx claudepluginhub manojbajaj95/claude-gtm-plugin --plugin gtm-skillsResearches YouTube competitor channels, analyzes videos and engagement, identifies content gaps and trending topics for strategy.
Reads public YouTube data through UnifAPI — channel/video/playlist metadata, counts, comments, captions, community posts, trending, and search. Use for creator vetting, competitor analysis, or content demand research.
Routes YouTube creator requests to 14 sub-skills for channel audits, video SEO, retention scripts, hooks, thumbnails, strategy, calendars, Shorts, analytics, monetization, competitors, repurposing, metadata, and ideas.