Agent skill

Youtube Research

by manojbajaj95 in manojbajaj95/claude-gtm-plugin

Research YouTube topics, analyze competitor videos, deconstruct viral content, and query the YouTube Data API.

MITAuto-check: notesKnowledge Management

Install Youtube Research

skills CLI
$ npx skills add manojbajaj95/claude-gtm-plugin --skill youtube-research -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install manojbajaj95/claude-gtm-plugin youtube-research --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/manojbajaj95/claude-gtm-plugin.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/youtube-research .claude/skills/youtube-research && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
youtube-research
GitHub stars
105
Token cost
~2.2k tokens
SKILL.md length
777 words
Files
3 (incl. scripts)
Skills in repo
52
Repo updated
First seen
Licence
MIT

At a glance

Research YouTube topics, analyze competitor videos, deconstruct viral content, and query the YouTube Data API.

  • Works in 2 steps: Get an API Key → Key API Commands
  • Researching a video topic before planning
  • SKILL.md covers Workspace Context, Operating Contract, When to Use and YouTube Data API Setup, plus 3 more sections
  • Runs Python scripts from its folder; calls bash, jq and python; reaches googleapis.com; needs YOUTUBE_API_KEY

What it does

Youtube Research is an agent skill from manojbajaj95/claude-gtm-plugin. Research YouTube topics, analyze competitor videos, deconstruct viral content, and query the YouTube Data API. Use when researching a video topic before planning, analyzing video transcripts for viral patterns, searching competitor channels, or fetching video and channel stats via the YouTube Data API v3.

Its SKILL.md is about 2.2k tokens, which your agent loads only when the skill is triggered. The skill folder holds 4 other files, including scripts (for example `reference/analysis-framework.md` and `scripts/fetch_transcript.py`).

It sits in Knowledge Management, covering Video and podcast notes. It works with YouTube and Bash. The licence is MIT.

When your agent uses it

  • Researching a video topic before planning
  • Analyzing video transcripts for viral patterns
  • Searching competitor channels
  • Fetching video and channel stats via the YouTube Data API v3

Example prompts

  • “/youtube-research”

Requirements

  • Python 3
  • A credential in YOUTUBE_API_KEY
  • Pre-approved tools (allowed-tools): Bash, WebSearch, WebFetch

Workflow steps

2 steps, taken from the step headings in SKILL.md.

  1. Get an API Key
  2. Key API Commands

What it can do on your machine

Read from SKILL.md and the folder at commit 0830a46. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves these tools, so the agent can use them without asking each time:

    • Bash
    • WebSearch
    • WebFetch

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    Ships 1 file in scripts/ (Python), which the agent can run.

    Shell commands in SKILL.md call:

    • bash
    • jq
    • python

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    Hosts in commands or code, which the agent is likely to contact:

    • googleapis.com

    Also links to:

    • console.cloud.google.com
    • developers.google.com

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names these keys or tokens, usually read from environment variables:

    • YOUTUBE_API_KEY

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Youtube Research loads about 2.2k tokens when it runs. Until then it costs about 81 tokens; SKILL.md has 777 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~81
When it runs · the whole SKILL.md, loaded when a task matches
~2.2k

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check: notes

The automated check noted patterns worth knowing about, such as sudo or a known installer.

  • NotePre-approves every shell command (allowed-tools: Bash)SKILL.md
    allowed-tools: Bash, WebSearch, WebFetch

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); the scripts in this folder are not scanned.

SKILL.md

The full file from manojbajaj95/claude-gtm-plugin at commit 0830a46, republished under its MIT licence (© manojbajaj95). 777 words, ~2,234 tokens.

Download SKILL.mdSave it as .claude/skills/youtube-research/SKILL.md (or your agent's skills folder). This skill also uses 2 other files; get the full folder from GitHub.
name
youtube-research
description
Research YouTube topics, analyze competitor videos, deconstruct viral content, and query the YouTube Data API. Use when researching a video topic before planning, analyzing video transcripts for viral patterns, searching competitor channels, or fetching video and channel stats via the YouTube Data API v3.
allowed-tools
Bash, WebSearch, WebFetch

YouTube Research

Workspace Context

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.

Operating Contract

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:

  1. Topic Research — competitive landscape, content gaps, strategic insights before planning a video
  2. Video Analysis — forensic deconstruction of transcripts to extract viral formulas and retention mechanics
  3. API Queries — direct YouTube Data API v3 access for search, stats, comments, and channel info

When to Use

  • Researching a video topic before planning production
  • Analyzing a competitor video to extract what makes it work
  • Fetching channel stats, video metrics, or comments via the API
  • Identifying content gaps and opportunities in a niche

YouTube Data API Setup

1. Get an API Key
  1. Go to Google Cloud Console → APIs & Services → Library
  2. Enable YouTube Data API v3
  3. Create Credentials → API Key
bash
export YOUTUBE_API_KEY="your-api-key-here"

Important: When piping curl output, wrap the command in bash -c '...' to preserve env vars:

bash
bash -c 'curl -s "https://..." -H "..." | jq .'
2. Key API Commands

Search Videos:

bash
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
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
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
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
bash -c 'curl -s "https://www.googleapis.com/youtube/v3/videos?part=snippet,statistics&chart=mostPopular&regionCode=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.


Mode 1: Topic Research

Conduct research before planning a new video. Focus on insights and big levers — not data dumping.

Workflow

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

  • What problem does this video solve?
  • Why would someone click on it?
  • What makes it relevant now?

Step 2: Research your own channel

Use the API to find related videos you've already published. Document:

  • Related videos (title, video ID, URL, key metrics)
  • What's already been covered and how to differentiate

Step 3: Competitor research

Search for 5–8 top videos on the topic. For each:

  • Get video details (views, likes, duration)
  • Note the title, angle, and what makes it successful
  • Synthesize common patterns and approaches

Step 4: Content gap analysis

Document:

  • What's saturated — 3–5 over-covered angles
  • Gaps (Opportunities) — rated ⭐⭐⭐ high / ⭐⭐ medium / ⭐ low
  • Recommended focus — specific angle + unique value proposition

Rating criteria:

  • ⭐⭐⭐ High: Significant gap, strong demand, clear differentiation
  • ⭐⭐ Medium: Moderate gap, some competition, good potential
  • ⭐ Low: Minor gap, heavily competed
Research File Template
markdown
# [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]
Show full SKILL.md (320 more words)Show less
Parallel Research

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.

Pitfalls
  • Data dumping — Limit to 5–8 competitors, synthesize patterns instead of listing every video
  • Vague gaps — "Not much content on this" → identify the specific missing angle
  • Long reports — Focus on insights and big levers

Next step: Use youtube-content skill to plan the video based on this research.


Mode 2: Video Analysis

Forensic deconstruction of video transcripts to extract viral formulas, hooks, and retention mechanics.

Getting the Transcript

Auto-fetch:

bash
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.

Analysis Framework

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:

  1. Hook Architecture — Primary hook (first 3–8s), hook type, secondary hooks, fill-in-blank templates
  2. Structural Blueprint — Content framework (PAS, Story-Lesson-CTA, List-Depth-Summary), beat map, pacing
  3. Retention Mechanics — Open loops, pattern interrupts, curiosity gaps, payoff points
  4. Emotional Engineering — Emotional arc, trigger words, identity hooks, Us vs. Them dynamics
  5. Storytelling Elements — Narrative framework, character positioning, conflict/stakes, specificity
  6. Linguistic Patterns — Power phrases, sentence rhythm, repetition, conversational triggers
  7. Algorithm Signals — Watch time optimizers, engagement bait, share/save triggers
  8. CTA Architecture — Primary CTA, soft CTAs, timing, value exchange
  9. Viral Coefficient — Shareability score (1–10), comment bait density, crossover potential
  10. Reusable Templates — Fill-in-blank opening hooks (3 variations), section templates, transition library
  11. Implementation Playbook — Top 10 steal-this elements, niche adaptation, A/B test suggestions
Before Analysis, Collect Context
  • Your niche/topic
  • Your content style (casual, educational, hype, etc.)
  • Target platform and video length goal
Output Format

Structure output with all 11 sections. End with a Quick Reference Cheatsheet — one-page summary of all extracted patterns for rapid implementation.


Tools

  • YouTube API: bash -c 'curl ...' with $YOUTUBE_API_KEY
  • MCP (if available): mcp__plugin_yt-content-strategist_youtube-analytics__search_videos, get_video_details, get_channel_details
  • Web: WebSearch and WebFetch for industry trends and context

© manojbajaj95, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

SKILL.md and 2 other files (scripts) in skills/youtube-research of manojbajaj95/claude-gtm-plugin.

  • SKILL.md
  • reference/analysis-framework.md
  • scripts/fetch_transcript.py

Open the folder on GitHubat commit 0830a46

Compare with similar skills

Youtube Research next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Youtube Research compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Youtube Research this skillmanojbajaj95/claude-gtm-plugin105—~2.2kAutomated safety check: NotesMIT
Multi-Source to NotebookLM Processorjoeseesun/qiaomu-anything-to-notebooklm6.2k—~3.6kAutomated safety check: PassMIT
YouTube Transcript FetcherZeroPointRepo/youtube-skills1k1 repos~1.1kAutomated safety check: PassMIT
Subscription Videos MetadataEfficientStreet/youtube-subscriptions-ingest180—~7.1kAutomated safety check: NotesMIT
YouTube Video TranscriptZeroPointRepo/youtube-skills1k1 repos~1.1kAutomated safety check: PassMIT
Video Lens Gallerykar2phi/video-lens113—~608Automated safety check: NotesMIT

Similar skills

  • Multi-Source to NotebookLM Processor

    joeseesun/qiaomu-anything-to-notebooklm

    Collects content from WeChat articles, web pages, YouTube, podcasts, documents and more, uploads it to NotebookLM and generates podcasts, slides or mind maps.

    6.2k GitHub stars~3.6k tokensUpdated 6 days ago
    Knowledge ManagementAuto-check passed
  • YouTube Transcript Fetcher

    ZeroPointRepo/youtube-skills

    Fetches the transcript of a YouTube video through TranscriptAPI.com so the agent can summarize, quote, translate or fact-check what was said.

    1k GitHub starsUsed in 1 repo~1.1k tokens
    Knowledge ManagementAuto-check passed
  • Subscription Videos Metadata

    EfficientStreet/youtube-subscriptions-ingest

    Pull metadata from YouTube subscription videos into a second-brain vault as a real cross-linked knowledge graph — not just a flat archive.

    180 GitHub stars~7.1k tokensUpdated 1 mo ago
    Knowledge ManagementAuto-check: notes
  • YouTube Video Transcript

    ZeroPointRepo/youtube-skills

    Fetches YouTube transcripts through TranscriptAPI.com so an agent can summarize, quote or translate a video from a link or ID.

    1k GitHub starsUsed in 1 repo~1.1k tokens
    Knowledge ManagementAuto-check passed
  • Video Lens Gallery

    kar2phi/video-lens

    Open or rebuild the video-lens gallery index — your personal library of saved video summaries.

    113 GitHub stars~608 tokensUpdated 1 mo ago
    Knowledge ManagementAuto-check: notes
  • Channel To Kb

    coleam00/cole-medin-knowledge-base

    Build an OKF (Open Knowledge Format) knowledge base from any YouTube channel.

    137 GitHub stars~808 tokensUpdated 2 mo ago
    Knowledge ManagementAuto-check passed

More from manojbajaj95/claude-gtm-plugin

All 52 skills in this repo
  • App Store Optimization

    manojbajaj95/claude-gtm-plugin

    A skill your agent uses when optimizing app store listings, researching keywords, or tracking mobile app performance on Apple App Store and Google Play Store.

    105 GitHub stars~4.2k tokensUpdated 23 days ago
    Auto-check passed
  • Market Research Analysis

    manojbajaj95/claude-gtm-plugin

    Comprehensive market research and analysis skill. An agent skill from manojbajaj95/claude-gtm-plugin.

    105 GitHub stars~2.6k tokensUpdated 23 days ago
    Auto-check passed
  • Pitch Deck Creation

    manojbajaj95/claude-gtm-plugin

    Create professional investor pitch decks with structured content and visual design.

    105 GitHub stars~2.1k tokensUpdated 23 days ago
    Auto-check passed
  • Qr Code Generator

    manojbajaj95/claude-gtm-plugin

    Generate QR codes with URLs and UTM tracking. An agent skill from manojbajaj95/claude-gtm-plugin.

    105 GitHub starsUsed in 1 repo~694 tokens
    Auto-check passed
  • SEO And Aeo Strategy

    manojbajaj95/claude-gtm-plugin

    SEO, AEO (Answer Engine Optimization), and GEO strategy for search engines and AI visibility.

    105 GitHub stars~4k tokensUpdated 23 days ago
    Auto-check passed
  • Linkedin

    manojbajaj95/claude-gtm-plugin

    LinkedIn profile optimization and content creation. An agent skill from manojbajaj95/claude-gtm-plugin.

    105 GitHub stars~3.2k tokensUpdated 23 days ago
    Auto-check passed

Works with

Questions about Youtube Research

What does Youtube Research do?

Research YouTube topics, analyze competitor videos, deconstruct viral content, and query the YouTube Data API. Youtube Research is an agent skill from manojbajaj95/claude-gtm-plugin. Research YouTube topics, analyze competitor videos, deconstruct viral content, and query the YouTube Data API.

When should I use Youtube Research?

Youtube Research fits situations like: researching a video topic before planning; analyzing video transcripts for viral patterns; searching competitor channels; fetching video and channel stats via the YouTube Data API v3.

How do I install Youtube Research in Claude Code?

Run `npx skills add manojbajaj95/claude-gtm-plugin --skill youtube-research -a claude-code`. Or copy the skill folder (skills/youtube-research in manojbajaj95/claude-gtm-plugin) into .claude/skills/youtube-research in your project. Claude Code loads it when a task matches its description.

How do I install Youtube Research in Codex?

Run `npx skills add manojbajaj95/claude-gtm-plugin --skill youtube-research -a codex`. Or copy the skill folder (skills/youtube-research in manojbajaj95/claude-gtm-plugin) into .agents/skills/youtube-research in your project. Codex loads it when a task matches its description.

Can I use Youtube Research in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add manojbajaj95/claude-gtm-plugin --skill youtube-research -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/youtube-research, .gemini/skills/youtube-research, .github/skills/youtube-research and .opencode/skills/youtube-research in your project.

What does Youtube Research need to run?

Going by SKILL.md and its folder, Youtube Research needs Python for the scripts in its folder, the command-line tools its instructions call (bash, jq and python) and credentials named YOUTUBE_API_KEY. Our summary lists: Python 3; A credential in YOUTUBE_API_KEY. Its frontmatter pre-approves these tools: Bash, WebSearch, WebFetch.

Does Youtube Research access the network?

SKILL.md names 3 domains. In commands or code: googleapis.com; the agent is likely to contact it when it follows the instructions. As links in the text: console.cloud.google.com and developers.google.com. This is read from the text; nothing was executed.

Is Youtube Research safe to install?

Our automated static check of SKILL.md found notes only (pre-approves every shell command (allowed-tools: bash)), nothing it rates as a warning. It is not a guarantee. The check reads SKILL.md only: the scripts in the folder are not scanned, so read them before running anything.

What licence does Youtube Research use?

Youtube Research is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Youtube Research use?

About 2.2k tokens (SKILL.md is roughly 8.9k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.

What are the alternatives to Youtube Research?

Skills that share tags, products or a category with Youtube Research: Multi-Source to NotebookLM Processor (joeseesun/qiaomu-anything-to-notebooklm, 6.2k stars), YouTube Transcript Fetcher (ZeroPointRepo/youtube-skills, 1k stars), Subscription Videos Metadata (EfficientStreet/youtube-subscriptions-ingest, 180 stars) and YouTube Video Transcript (ZeroPointRepo/youtube-skills, 1k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Youtube Research?

manojbajaj95 (a GitHub user) maintains it in manojbajaj95/claude-gtm-plugin, which has 105 GitHub stars. The repository holds 52 skills in this directory. The repository was last updated on September 18, 2026.

Source: manojbajaj95/claude-gtm-plugin on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.