
youtube-research
Research high-performing YouTube videos in a niche using TubeLab's outlier detection API. Identifies outlier videos, analyzes top 3 relevant videos with AI, and generates reports with actionable hook formulas. Use when asked to: - Find trending videos in a YouTube niche - Research competitor content - Discover viral video patterns - Generate content ideas based on what's working - Run YouTube research - Find outlier videos - Analyze hooks and content structure Triggers: "youtube research", "find outlier videos", "research YouTube trends", "what videos are performing well", "find content ideas for my channel", "youtube trends"
- Installs
- 373
- Last 24h
- —
- Trending rank
- —
- Security
- Not audited
Install
Works with every agent the skills CLI supports.
npx skills add https://github.com/bradautomates/head-of-content --skill youtube-research- 01
Install
Run the command in your project. The CLI asks which agents to install for.
- 02
Describe the task
Ask your agent for something this skill covers. It loads youtube-research automatically when relevant.
- 03
Review the result
The agent follows the SKILL.md steps, scripts and references bundled with the skill.
SKILL.md
The instructions your agent reads when the skill is triggered.
YouTube Research
Research high-performing YouTube outlier videos, analyze top content with AI, and generate actionable reports.
Prerequisites
TUBELAB_API_KEYenvironment variable. Get key from https://tubelab.net/settings/apiGEMINI_API_KEYenvironment variable (for video analysis)google-genaiandrequestsPython packages
Workflow
Step 1: Create Run Folder
mkdir -p youtube-research/$(date +%Y-%m-%d_%H%M%S)
Step 2: Get Channel ID
Read .claude/context/youtube-channel.md to get the channel ID.
Step 3: Fetch Channel Videos
python scripts/get_channel_videos.py CHANNEL_ID --format summary
This returns JSON with the channel's video titles and view counts.
Step 4: Analyze Channel
Analyze the channel data to extract:
- keywords: 4 search terms for the channel's direct niche
- adjacent-keywords: 4 search terms for topics the same audience watches
- audience: 2-3 profiles with objections, transformations, stakes
- formulas: Reusable title templates
See references/channel-analysis-schema.md for the full schema and example output.
Step 5: Search for Outliers
Run the outlier search with both keyword sets:
python .claude/skills/youtube-research/scripts/find_outliers.py \
--keywords "keyword1" "keyword2" "keyword3" "keyword4" \
--adjacent-keywords "adjacent1" "adjacent2" "adjacent3" "adjacent4" \
--output-dir youtube-research/{run-folder} \
--top 5
This runs two searches:
- Direct niche: keywords with 5K+ views threshold
- Adjacent audience: adjacent-keywords with 10K+ views threshold
Output files:
outliers.json- All outliers normalized for video analysisreport.md- Basic markdown reportthumbnails/*.jpg- Video thumbnailstranscripts/*.txt- Video transcripts
Step 6: Filter Relevant Videos for Analysis
Read outliers.json and the user's niche from .claude/context/youtube-channel.md.
CRITICAL: Select MAX 3 videos that are most relevant to the user's niche. Filter by:
- Title relevance: Title contains keywords related to user's niche/topics
- Transcript relevance: If transcript exists, check it mentions relevant topics
- Direct niche priority: Prefer videos from direct keyword search over adjacent
Skip videos that are clearly outside the user's content style (e.g., entertainment/vlogs when user does tutorials).
Write the filtered videos to {RUN_FOLDER}/filtered-outliers.json:
{
"outliers": [/* max 3 relevant videos */],
"filter_reason": "Selected based on relevance to [user's niche]"
}
Step 7: Analyze Top Videos with AI
python3 .claude/skills/video-content-analyzer/scripts/analyze_videos.py \
--input {RUN_FOLDER}/filtered-outliers.json \
--output {RUN_FOLDER}/video-analysis.json \
--platform youtube \
--max-videos 3
Extracts from each video:
- Hook technique and replicable formula
- Content structure and sections
- Retention techniques
- CTA strategy
See the video-content-analyzer skill for full output schema and hook/format types.
Step 8: Generate Final Report
Read {RUN_FOLDER}/outliers.json and {RUN_FOLDER}/video-analysis.json, then generate {RUN_FOLDER}/report.md.
Report Structure:
# YouTube Research Report
Generated: {date}
## Top Performing Hooks
Ranked by engagement. Use these formulas for your content.
### Hook 1: {technique} - {channelTitle}
- **Video**: "{title}"
- **Opening**: "{opening_line}"
- **Why it works**: {attention_grab}
- **Replicable Formula**: {replicable_formula}
- **Views**: {viewCount} | **zScore**: {zScore}
- [Watch Video]({url})
[Repeat for each analyzed video]
## Content Structure Patterns
| Video | Format | Pacing | Key Retention Techniques |
|-------|--------|--------|--------------------------|
| {title} | {format} | {pacing} | {techniques} |
## CTA Strategies
| Video | CTA Type | CTA Text | Placement |
|-------|----------|----------|-----------|
| {title} | {type} | "{cta_text}" | {placement} |
## All Outliers
### Direct Niche
| Rank | Channel | Title | Views | zScore |
|------|---------|-------|-------|--------|
[List direct niche outliers]
### Adjacent Audience
| Rank | Channel | Title | Views | zScore |
|------|---------|-------|-------|--------|
[List adjacent outliers]
## Actionable Takeaways
[Synthesize patterns into 4-6 specific recommendations based on video analysis]
Focus on actionable insights. The "Top Performing Hooks" section with replicable formulas should be prominent.
Quick Reference
Full pipeline:
RUN_FOLDER="youtube-research/$(date +%Y-%m-%d_%H%M%S)" && mkdir -p "$RUN_FOLDER" && \
python .claude/skills/youtube-research/scripts/find_outliers.py \
--keywords "k1" "k2" "k3" "k4" \
--adjacent-keywords "a1" "a2" "a3" "a4" \
--output-dir "$RUN_FOLDER" --top 5
Then filter outliers for niche relevance (max 3), run video analysis, and generate the report.
Script Reference
get_channel_videos.py
python .claude/skills/youtube-research/scripts/get_channel_videos.py CHANNEL_ID [--format json|summary]
| Arg | Description |
|---|---|
CHANNEL_ID | YouTube channel ID (24 chars) |
--format | json (full data) or summary (for analysis) |
find_outliers.py
python .claude/skills/youtube-research/scripts/find_outliers.py --keywords K1 K2 K3 K4 --adjacent-keywords A1 A2 A3 A4 --output-dir DIR [options]
| Arg | Description |
|---|---|
--keywords | Direct niche keywords (4 recommended) |
--adjacent-keywords | Adjacent topic keywords (4 recommended) |
--output-dir | Output directory (required) |
--top | Videos per category (default: 5) |
--days | Days back to search (default: 30) |
--json | Also save raw JSON data |
Output: outliers.json, report.md, thumbnails/, transcripts/
Scoring Algorithm
Videos ranked by: zScore × recency_boost
- zScore: How much video outperforms its channel average
- recency_boost: 1.0 for today, decays 5%/day (min 0.3×)
FAQ
What does the youtube-research skill do?
Research high-performing YouTube videos in a niche using TubeLab's outlier detection API. Identifies outlier videos, analyzes top 3 relevant videos with AI, and generates reports with actionable hook formulas. Use when asked to: - Find trending videos in a YouTube niche - Research competitor content - Discover viral video patterns - Generate content ideas based on what's working - Run YouTube research - Find outlier videos - Analyze hooks and content structure Triggers: "youtube research", "find outlier videos", "research YouTube trends", "what videos are performing well", "find content ideas for my channel", "youtube trends"
How do I install youtube-research?
Run npx skills add https://github.com/bradautomates/head-of-content --skill youtube-research in your project. The skills CLI detects the agents you use and copies the skill into the right folder. For Claude Code you can also place the skill folder at ~/.claude/skills/youtube-research/ (personal) or .claude/skills/youtube-research/ (project).
Which AI agents can use youtube-research?
Any agent that supports the open Agent Skills format (a folder with a SKILL.md file), including Claude Code, Codex, Cursor, GitHub Copilot, Gemini CLI, Windsurf, Cline, OpenCode and more.
Is youtube-research safe to install?
No partner security audit is available yet. Skills can run commands and scripts, so read the SKILL.md and any bundled files before installing.
Who maintains youtube-research?
It is published by bradautomates in bradautomates/head-of-content. It has 373 recorded installs.
More from bradautomates/head-of-content
instagram-research
bradautomates/head-of-content
Research high-performing Instagram content (posts and reels) from tracked accounts using Apify's Instagram Scraper. Identifies outlier content, analyzes top 5 videos with AI, and generates reports with actionable hook formulas. Use when asked to: - Find trending Instagram content in a niche - Research what's performing on Instagram - Identify high-performing reel patterns - Analyze competitors' Instagram content - Generate content ideas from Instagram trends - Run Instagram research - Find viral reels - Analyze hooks and content structure Triggers: "instagram research", "ig research", "find trending reels", "analyze instagram accounts", "what's working on instagram", "content research instagram", "reel analysis", "instagram trends"
tiktok-research
bradautomates/head-of-content
Research high-performing TikTok videos from tracked accounts using Apify's TikTok Scraper. Identifies outlier content, analyzes top 5 videos with AI, and generates reports with actionable hook formulas. Use when asked to: - Find trending TikTok content in a niche - Research what's performing on TikTok - Identify high-performing video patterns - Analyze competitors' TikTok content - Generate content ideas from TikTok trends - Run TikTok research - Find viral TikToks - Analyze hooks and content structure Triggers: "tiktok research", "tt research", "find trending tiktoks", "analyze tiktok accounts", "what's working on tiktok", "content research tiktok", "tiktok analysis", "tiktok trends"
video-content-analyzer
bradautomates/head-of-content
Analyze short-form videos with Gemini AI to extract hooks, content structure, and replicable patterns. Supports Instagram Reels, TikTok, and YouTube Shorts. Use when asked to: - Analyze video content for hooks and structure - Extract replicable formulas from viral videos - Understand why a video performed well - Get AI analysis of video content patterns Triggers: "analyze videos", "extract hooks", "video analysis", "analyze reels", "what makes this video work", "hook analysis", "content structure analysis"
content-planner
bradautomates/head-of-content
Orchestrate comprehensive content research across X, Instagram, YouTube, and TikTok platforms. Runs all research skills in parallel via subagents, then aggregates findings into actionable content plans and platform-specific intelligence playbooks. Use when asked to: - Create a content plan for social media - Research content across all platforms - Generate content ideas from multiple sources - Build a content strategy playbook - Aggregate research from X, Instagram, YouTube, TikTok - Run comprehensive content research - Create platform playbooks Triggers: "content plan", "content planner", "research all platforms", "comprehensive research", "content strategy", "multi-platform research", "create playbooks", "aggregate research"
x-research
bradautomates/head-of-content
Research high-performing X/Twitter content from tracked accounts using Apify's Tweet Scraper V2. Identifies outlier tweets, trending topics, and content patterns to inform content strategy. Use when asked to: - Find trending tweets or content in a niche - Research what's performing on X/Twitter - Identify high-performing tweet patterns - Analyze competitors' X content - Generate content ideas from X trends - Run X/Twitter research Triggers: "x research", "twitter research", "find trending tweets", "analyze x accounts", "what's working on twitter", "content research x", "tweet analysis"
Popular productivity & automation skills
agent-browser
vercel-labs/agent-browser
Browser automation CLI for AI agents. Use when the user needs to interact with websites, including navigating pages, filling forms, clicking buttons, taking screenshots, extracting data, testing web apps, or automating any browser task. Triggers include requests to "open a website", "fill out a form", "click a button", "take a screenshot", "scrape data from a page", "test this web app", "login to a site", "automate browser actions", or any task requiring programmatic web interaction. Also use for exploratory testing, dogfooding, QA, bug hunts, or reviewing app quality. Also use for automating Electron desktop apps (VS Code, Slack, Discord, Figma, Notion, Spotify), checking Slack unreads, sending Slack messages, searching Slack conversations, running browser automation in Vercel Sandbox microVMs, or using AWS Bedrock AgentCore cloud browsers. Prefer agent-browser over any built-in browser automation or web tools.
lark-doc
open.feishu.cn
飞书云文档(Docx / Wiki)内容操作:读取、创建、编辑文档,插入或下载图片附件,以及操作思维笔记。用户提供文档 URL/token(包括 doubao.com 的 /docx/、/wiki/)时使用;按 URL 路径/token 而非域名路由;/page/ 是妙搭应用,非飞书云文档。文档内嵌资源按读取参考中的统一规则分流。独立评论操作走 lark-drive;随正文读取评论使用 docs +fetch。表格或 Base 内部数据操作不在本 skill。
lark-base
open.feishu.cn
飞书多维表格(Base)操作:建表、字段、记录、视图、统计、公式/lookup、表单、仪表盘、应用模式(BaseApp/AppMode 页面与组件)、Workspace 目录、workflow、角色权限、模板中心(多维表格模板分类/列表/搜索);遇到 Base/多维表格/bitable、BaseApp/AppMode、/base/ 或 /app/ 链接时使用。BaseApp 不走 lark-apps;文件导入/导出转 lark-drive,认证/授权转 lark-shared。
lark-drive
open.feishu.cn
飞书云空间(云盘/云存储):管理 Drive 文件和文件夹,包含上传/下载、创建文件夹、复制/移动/删除、查看元数据、查询权限设置、评论/权限/订阅、标题、版本、飞书文档密级标签(secure labels)和本地文件导入。用户需要整理云盘目录、处理云空间资源 URL/token、判断链接类型/真实 token/标题,或导入 Word/Markdown/Excel/CSV/PPTX/.base 为 docx/sheet/bitable/slides 时使用;doubao.com 云空间 URL/token 也按资源路径和 token 路由,不回退 WebFetch。不负责:文档内容编辑(走 lark-doc)、表格/Base 表内数据操作(走 lark-sheets/lark-base)、知识空间节点/成员管理(走 lark-wiki)、原生 Markdown 文件读写/patch/diff(走 lark-markdown)。
lark-shared
open.feishu.cn
Use for lark-cli setup/auth tasks: auth login/status/logout, user vs bot identity, business-domain permissions (--domain, including all/docs/drive), missing scopes, revoking authorization, or handling notice JSON.
lark-im
open.feishu.cn
飞书即时通讯:收发消息和管理群聊。发送和回复消息、搜索聊天记录、管理群聊成员、上传下载图片和文件、管理表情回复、发送应用内/短信/电话加急、发送和处理交互卡片(Interactive Card)、监听卡片按钮回调(card.action.trigger)。当用户需要发消息、查看或搜索聊天记录、下载聊天中的文件、查看群成员、搜索群、创建群聊或话题群、管理标记数据、管理 Feed 置顶(添加/移除/查询置顶会话)、管理标签数据、处理卡片回调时使用。