Back to Skills
    šŸ¦ž

    tube-summary

    Search YouTube for videos on any topic and get intelligent

    By @dillera
    View on GitHub
    SKILL.md
    ---
    name: tube-summary
    description: Search YouTube for videos on any topic and get intelligent summaries from video subtitles. Use when you need to: (1) Find and preview YouTube videos on a subject, (2) Get a detailed description of what a video covers based on its actual content, (3) Quickly understand video topics without watching. Workflow: search YouTube → pick a video → extract and summarize subtitles.
    ---
    
    # tube-summary
    
    Search YouTube for videos on any topic, then extract and summarize their content using subtitles.
    
    ## Quick Start
    
    ### Step 1: Search for Videos
    
    When asked about a topic, search YouTube and list the top 10 results:
    
    ```bash
    python3 scripts/youtube-search.py "your search query"
    ```
    
    This returns a numbered list of videos with titles, channels, and view counts.
    
    ### Step 2: User Picks a Video
    
    The user selects one video by number (e.g., "3" for the third video).
    
    ### Step 3: Download Subtitles
    
    Extract English subtitles from the selected video using yt-dlp:
    
    ```bash
    yt-dlp --write-subs --sub-langs en --skip-download "VIDEO_URL"
    ```
    
    This creates a `.en.vtt` subtitle file without downloading the video.
    
    ### Step 4: Process & Summarize
    
    Use the subtitle processor to analyze and summarize:
    
    ```bash
    python3 scripts/process-subtitles.py "path/to/subtitle-file.vtt"
    ```
    
    This generates:
    - **Key Topics**: Main subjects covered in the video
    - **Summary**: Concise 2-3 paragraph description of content
    - **Timestamps**: Notable moments with context
    - **Key Quotes**: Important statements from speakers
    
    ## Workflow
    
    1. **Search** → `youtube-search.py "<topic>"` → Display top 10 videos
    2. **User selects** → e.g., "Video 5"
    3. **Extract URL** → From the search results
    4. **Download subs** → `yt-dlp --write-subs --sub-langs en --skip-download "URL"`
    5. **Process** → `process-subtitles.py "subtitle.vtt"`
    6. **Present** → Formatted summary with key points
    
    ## Prerequisites
    
    - `yt-dlp` (install: `pip install yt-dlp`)
    - `requests` (for YouTube search fallback)
    - Python 3.7+
    
    ## Notes
    
    - If YouTube search API is unavailable, the fallback uses web scraping via requests
    - Subtitles may be auto-generated if not manually authored
    - Some videos may not have English subtitles available
    - The subtitle file is created in the same directory as yt-dlp is run
    
    ## Example Usage
    
    ```
    User: "Tell me about Rust programming language"
    
    → Search returns 10 videos about Rust
    
    User: "Summarize video 3"
    
    → Downloads subtitles from video 3
    → Processes and returns detailed summary
    ```