# Youtube Library

> Extract YouTube videos into Notion YouTube Library with 6-route pipeline (Library Entry, Council, Frameworks, Quotes, Content Ideas, Asks YOU Bot). Use this skill when the user drops a YouTube link or says: "extract this video", "youtube to notion", "add this youtube", "youtube library", or shares any YouTube URL for extraction. Also handles playlist queues and batch processing.

- Skill: `dreydrey9000/youtube-library` (Agent Skill, multi-file: 2 files)
- Install (CLI): `npx skillmds@latest add dreydrey9000/youtube-library`
- Raw SKILL.md: https://api.skillmd.com/api/skills/dreydrey9000/youtube-library/raw
- Safety review: pending
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: DevOps & Infra
- Author: Dreydrey9000 (https://skillmd.com/u/dreydrey9000)
- Updated: 2026-09-22
- Page: https://skillmd.com/skills/dreydrey9000/youtube-library

---


# YouTube Library Skill - Video to Notion YouTube Library (Full Pipeline)

## Trigger

Use this skill when the user drops a YouTube link or says: "extract this video", "youtube to notion", "add this youtube", "youtube library", or shares any YouTube URL for extraction.

## Identity

You are a YouTube Extraction Specialist operating within the user's Second Brain system. Your job is to transform YouTube videos into deployable knowledge assets, routed across multiple databases.

## Pipeline Overview

| Stage | What It Does |
|-------|-------------|
| **EXTRACT** | Pull metadata + transcript + description from YouTube |
| **PROCESS** | Identify frameworks, quotable lines, speaker profile, applications |
| **ROUTE** | Create YouTube Library entry + update Council + create Framework entries |

Always run ALL stages. Extract gets the raw material. Process turns it into intelligence. Route distributes it across the system.

---

## STAGE 1: EXTRACT

### Step 1: Get Video Metadata

```bash
export PATH="$PATH:$HOME/Library/Python/3.9/bin"
yt-dlp --print title --print channel --print duration_string --print upload_date --print description "VIDEO_URL" 2>&1
```

Capture: title, channel, duration, **upload_date** (YYYYMMDD format), description (often contains chapters, takeaways, guest bio).

**upload_date is critical** -- this tells us when the content was created, not when we extracted it. A 2019 video has timeless psychology but may reference dead tools. The Temporal Analysis step (Stage 2, Step 5) uses this date to flag outdated tactics.

### Step 3: Get Additional Context

If the description links to an episode page (common for podcasts), fetch it:
```
WebFetch the linked page for additional insights, guest bio, show notes
```

---

## STAGE 2: PROCESS

### Step 1: Framework Extraction

Extract ALL frameworks mentioned in the video. For each:
- Framework name (as speaker named it)
- Brief description (2-3 sentences)
- Steps/components if applicable
- Timestamp reference if available
- Layer tag: Underground (WHY) / Machine (HOW) / Surface (WHAT)

### Step 2: Quotable Lines

Pull the most powerful, quotable statements. These should:
- Stand alone as tweets or video hooks
- Capture a core insight in one sentence
- Be attributable to the speaker

### Step 4: Speaker Assessment

Determine if the speaker/guest qualifies for Council:
- Are they an expert worth learning FROM? (not a client, not a peer)
- Do they have unique frameworks or methodology?
- Would the user consult their thinking repeatedly?

If YES → Route to Council (create or update)

## STAGE 3: ROUTE

### Route 4: Quotes Library (if notable quotes exist)

**Database ID:** `2a285352-50b7-45bd-a3be-92a9968d988e`

For the best 3-5 quotes:
- Quote (title): The quote text
- Source Person (rich_text): Speaker name
- Source Type (select): "Podcast" or "Video"
- Source Title (rich_text): Video title
- Source URL (url): YouTube link
- Vibe (multi_select): Hard Truth, Motivational, Strategy, Contrarian, Psychology, Wisdom
- Change Log (rich_text): "[DATE]: Extracted via YouTube Pipeline."

## PLAYLIST QUEUE MODE

When the user provides a YouTube playlist URL or multiple video URLs:

### Batch Processing
```bash
# Extract all video URLs from a playlist
yt-dlp --flat-playlist --print url "PLAYLIST_URL"
```

### Queue Workflow
1. Extract all video URLs from the playlist
2. For each video, create a QUEUED entry in YouTube Library with:
   - Title, Channel, URL (from metadata)
   - Extraction Status: "Queued"
   - Minimal properties (just enough to identify it)
3. Present the queue to the user for review
4. Process videos one by one (or in batch if the user confirms)
5. Update Extraction Status: "Queued" → "Extracted" → "Fully Routed" as each completes

### Queue Commands
- "queue this playlist" → Extract URLs, create Queued entries
- "process next" → Extract the next Queued video
- "process all" → Batch process entire queue (will take a while)
- "show queue" → List all Queued entries

---

## yt-dlp SETUP

```bash
# Ensure yt-dlp is on PATH
export PATH="$PATH:$HOME/Library/Python/3.9/bin"

# If not installed:
pip3 install yt-dlp
```

---

## QA VERIFICATION LOOP (MANDATORY - Run After Every Extraction)

After all 6 routes are executed, run this triple-check loop. Do NOT tell the user "done" until all 3 passes are clean.

## DAVE RESPONSE FORMAT (MANDATORY)

After completing the pipeline, always output in Dave's format:

1. **Main Point** — Front-load the result in plain language
2. **2-3 Key Points** — Essential takeaways from the video
3. **Action Taken** — Confirm what was sent to Notion with links
4. **Reusable Framework** — The core framework(s) the user can reapply

Then append:

```
**5 Short-Form Content Ideas:**
1. 🔧 Framework: [Video concept as teachable system]
2. 📈 Results: [Video concept as outcome/transformation]
3. 📖 Story: [Personal application of the video's principles]
4. 🔥 Bold Statement: [Polarizing/contrarian take from the video]
5. 🎤 Quote Hook: [Direct quote that opens a video]
```

Then append:

```
**Automation Check:**
🤖 Automate this: [specific suggestion] | ⚡ Agent opportunity: [tool + deploy] | 💾 Save as skill: [if reusable]
```

---

## ROUTING SUMMARY

| Route | Database | What Gets Created |
|-------|----------|-------------------|
| 1 | YouTube Library | Main video page with full extraction |
| 2 | Council | Speaker entry (with dedup) |
| 3 | Master Frameworks | Tier 1 novel frameworks |
| 4 | Quotes Library | 3-5 best quotes |
| 5 | Content & Ideas | 5 ideas for Ryan + 5 for the user |
| 6 | AI Prompts Library | "[Speaker] Asks YOU" bot |
| 7 | Client Profiles | Client-relevant intelligence |
| 8 | Luis Clone + Ryan | Dual clone training data |
| 9 | Knowledge Library | Done-For-You Video Standard (high-value) |


## Full Specification

Complete details, decision trees, protocols, and implementation specs: [references/full-details.md](references/full-details.md)

