| name | youtube-processor |
| description | Process YouTube videos into summarized Obsidian notes. Use when given a YouTube URL to summarize, extract insights, or turn videos into notes. Triggers on "summarize this video", "process this YouTube", "what's this video about", or any YouTube URL shared for processing. |
| allowed-tools | Read, Bash, Write, Glob, WebFetch |
YouTube Processor
What This Does
Takes a YouTube URL, extracts the transcript, and you (Claude) summarize it. Outputs Obsidian-ready markdown. Zero friction: share a link, get actionable notes.
When to Use
- "Summarize this video: [URL]"
- "Turn this YouTube into notes"
- "What's this video about?"
- "Process this for my newsletter"
- Any YouTube URL shared for processing
Location
This skill's tools live at:
/Users/eddale/Documents/GitHub/powerhouse-lab/skills/youtube-processor/tools/
How It Works
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.
Instructions
Which Method to Use
| Environment | Method |
|---|---|
| Claude Code | Local Python script (Step 1a) |
| Claude.ai / Mac Client | API via WebFetch (Step 1b) |
Step 1a: Extract Transcript (Claude Code)
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
Step 1b: Extract Transcript (Claude.ai / Mac Client)
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"
Step 2: Summarize the Transcript
Once you have the transcript, summarize it based on what the user needs:
Quick Summary:
- Headline (1 sentence)
- Key points (3-5 bullets)
- Main takeaway
Detailed Analysis:
- Headline summary
- Key points with context
- Main takeaways
- Action items mentioned
- How this relates to Ed's work (if relevant)
Newsletter Mining:
- Hook ideas for an article
- Core insight/framework
- Story beats for anecdotes
- Takeaways for readers
- Newsletter angle for The Little Blue Report
Step 3: Format for Obsidian
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*
Step 4: Save (Optional)
Save to Ed's Zettelkasten:
/Users/eddale/Documents/COPYobsidian/MAGI/Zettelkasten/
Filename format: YT - [Topic] - YYYY-MM-DD.md
Error Handling
| 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 |
Examples
Example 1: Quick Summary
User says:
Summarize this: https://www.youtube.com/watch?v=VIDEO_ID
You do:
- Run:
python3 get_transcript.py --url "https://www.youtube.com/watch?v=VIDEO_ID" - Read the transcript output
- Provide a summary to the user
Example 2: Save to Obsidian
User says:
Turn this video into notes and save it: [URL]
You do:
- Extract transcript with the Python tool
- Summarize the content
- Format as Obsidian markdown
- Use Write tool to save to Zettelkasten
- Confirm: "Saved to [filepath]"
Example 3: Newsletter Mining
User says:
I want to write about this video for the newsletter: [URL]
You do:
- Extract transcript
- Analyze for newsletter angles (hooks, insights, story beats)
- Present the angles
- Offer to hand off to newsletter-coach skill
Integration Points
- newsletter-coach: After extracting video insights, hand off for article development
- mission-context: Use Ed's voice and style when summarizing
- task-clarity-scanner: Action items from videos can be added to daily notes
Dependencies
The Python tool requires:
youtube-transcript-api
Install if needed:
pip3 install youtube-transcript-api
Version History
| 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 |
Notes & Learnings
- youtube-transcript-api works without API keys
- Most videos have auto-generated English captions
- Claude doing the summarization is better than Python calling the API (can use context)
- ~3-5 second transcript extraction for typical videos