Process YouTube videos into summarized Obsidian notes. Use when given a YouTube URL to summarize, extract insights, or turn videos into notes...
Takes a YouTube URL, extracts the transcript, and you (Claude) summarize it. Outputs Obsidian-ready markdown. Zero friction: share a link, get actionable notes.
This skill's tools live at:
/Users/eddale/Documents/GitHub/powerhouse-lab/skills/youtube-processor/tools/
Step 1: Python extracts the transcript (no API key needed) Step 2: You (Claude) summarize using your intelligence + context Step 3: You write the Obsidian-formatted output
This approach means you can use mission-context, newsletter-coach, and other skills during summarization.
| Environment | Method |
|---|---|
| Claude Code | Local Python script (Step 1a) |
| Claude.ai / Mac Client | API via WebFetch (Step 1b) |
Run the Python tool to get the transcript:
cd /Users/eddale/Documents/GitHub/powerhouse-lab/skills/youtube-processor/tools && \
python3 get_transcript.py --url "[URL]"
For JSON output (easier to parse):
python3 get_transcript.py --url "[URL]" --json
Use the API endpoint via WebFetch:
WebFetch: https://youtube-processor-eight.vercel.app/transcript?url=[VIDEO_URL]
The API returns JSON:
{
"success": true,
"video_id": "abc123",
"language": "en",
"transcript": "...",
"char_count": 5000,
"word_count": 850
}
Example prompt for WebFetch: "Extract the transcript text from the response"
Once you have the transcript, summarize it based on what the user needs:
Quick Summary:
Detailed Analysis:
Newsletter Mining:
Create markdown with this structure:
---
source: YouTube
video_id: [ID]
url: [URL]
processed: [YYYY-MM-DD HH:MM]
tags: [youtube, video-notes]
---
# [Video Title or Topic]
**Link**: [URL]
**Processed**: [Date]
## Summary
[Your summary here]
---
## Full Transcript
[The transcript]
---
_Generated by youtube-processor skill_
Save to Ed's Zettelkasten:
/Users/eddale/Documents/COPYobsidian/MAGI/Zettelkasten/
Filename format: YT - [Topic] - YYYY-MM-DD.md
| Error | Meaning | What to Do |
|---|---|---|
| "Transcripts disabled" | Creator turned off captions | Video can't be processed |
| "No transcript found" | No English captions available | Try a different video |
| "Video unavailable" | Private, deleted, or age-restricted | Check the URL |
User says:
Summarize this: https://www.youtube.com/watch?v=VIDEO_ID
You do:
python3 get_transcript.py --url "https://www.youtube.com/watch?v=VIDEO_ID"User says:
Turn this video into notes and save it: [URL]
You do:
User says:
I want to write about this video for the newsletter: [URL]
You do:
The Python tool requires:
youtube-transcript-api
Install if needed:
pip3 install youtube-transcript-api
| Version | Date | Changes |
|---|---|---|
| 1.1 | 2026-01-03 | Added Vercel API for Claude.ai/Mac client support |
| 1.0 | 2026-01-02 | Initial build with transcript extraction |