skills/bradautomates/head-of-content/video-content-analyzer

video-content-analyzer

SKILL.md

Video Content Analyzer

Analyze short-form videos with Gemini AI to extract hooks, content structure, delivery style, and CTA strategies.

Prerequisites

  • GEMINI_API_KEY environment variable
  • google-genai and requests Python packages

Usage

python3 .claude/skills/video-content-analyzer/scripts/analyze_videos.py \
  --input outliers.json \
  --output video-analysis.json \
  --platform instagram \
  --max-videos 5

Parameters

Arg Description
--input, -i Input JSON file with outlier posts (required)
--output, -o Output JSON file for results (required)
--platform, -p Platform: instagram, tiktok, or youtube (default: instagram)
--max-videos, -n Max videos to analyze (default: 5)

Input Format

Accepts outlier JSON from platform-specific research skills. Handles both formats:

  • Direct list: [{post1}, {post2}, ...]
  • Wrapped: {"outliers": [{post1}, {post2}, ...]}

The script automatically maps platform-specific fields:

Platform Video URL Fields Caption Username
Instagram videoUrl caption ownerUsername
TikTok videoUrl, video_url, webVideoUrl text, desc authorUsername
YouTube videoUrl, url title channelTitle

TikTok Note: The Apify TikTok Scraper returns webVideoUrl (the TikTok page URL) rather than a direct video download URL. Gemini will attempt to analyze from this page URL.

Output

Returns JSON array with analysis for each video:

[
  {
    "post_id": "ABC123",
    "username": "creator",
    "url": "https://...",
    "platform": "instagram",
    "likes": 50000,
    "comments": 1200,
    "views": 500000,
    "analysis": {
      "hook": {
        "technique": "pattern-interrupt",
        "opening_line": "Stop scrolling if you...",
        "attention_grab": "Creates urgency and targets specific audience",
        "replicable_formula": "Stop scrolling if you [pain point]"
      },
      "content_structure": {
        "format": "problem-solution",
        "sections": [...],
        "pacing": "fast",
        "retention_techniques": ["pattern interrupts", "text overlays"]
      },
      "delivery_style": {
        "speaking": "direct-to-camera",
        "energy": "high-energy",
        "text_overlays": true,
        "visual_style": "quick cuts with b-roll"
      },
      "cta_strategy": {
        "type": "follow",
        "cta_text": "Follow for more tips",
        "placement": "end"
      },
      "why_it_works": "..."
    }
  }
]

Hook Techniques

The analyzer identifies these hook types:

  • pattern-interrupt - Breaks expected patterns
  • question - Opens with engaging question
  • bold-claim - Makes surprising statement
  • story-tease - Hints at compelling narrative
  • visual-shock - Striking visual opening
  • curiosity-gap - Creates information gap
  • direct-address - Speaks to specific audience
  • controversial-take - Polarizing opinion
  • relatable-pain - Targets common struggle
  • transformation-preview - Shows before/after

Content Formats

  • problem-solution - Present problem, offer fix
  • listicle - Numbered tips/items
  • story - Narrative arc
  • tutorial - Step-by-step how-to
  • before-after - Transformation reveal
  • day-in-life - Lifestyle content
  • reaction - Response to other content
  • hot-take - Opinion piece
  • tool-demo - Product/tool showcase
Weekly Installs
227
GitHub Stars
38
First Seen
Jan 28, 2026
Installed on
opencode212
gemini-cli209
codex205
cursor204
github-copilot200
kimi-cli192