This skill should be used when the user asks to "summarize videos", "summarize podcasts", "research a topic using media", "bulk summarize content", "scan YouTube channels", "scan podcast feeds", "create podcast notes", "digest conference talks", "summarize Apple Podcasts", or mentions video/podcast research, media summarization, or bulk content processing.
Scans YouTube channels, podcast RSS feeds, and other media sources to bulk summarize content. Use when users request to summarize videos, podcasts, or research topics using media.
/plugin marketplace add smerchek/bulk-summarize/plugin install smerchek-bulk-summarize@smerchek/bulk-summarizeThis skill inherits all available tools. When active, it can use any tool Claude has access to.
examples/conference-talks.jsonexamples/multi-platform.jsonexamples/podcast-research.jsonreferences/config-templates.mdreferences/platform-guide.mdreferences/prompt-patterns.mdA tool for scanning and summarizing media content across YouTube, podcast RSS feeds, SoundCloud, and other sources supported by yt-dlp. Ideal for podcast research, conference talk digests, tutorial compilations, and topic research.
Ensure these dependencies are installed:
curl -fsSL https://bun.sh/install | bashbrew install yt-dlp or pip install yt-dlp| Platform | URL Pattern | Notes |
|---|---|---|
| YouTube | youtube.com/@channel, playlist URLs | Has built-in transcripts, fastest |
| RSS Feeds | Direct feed URLs | Works with any podcast RSS feed |
| SoundCloud | soundcloud.com/user/... | Audio-only, auto-transcribed |
| Vimeo | vimeo.com/... | Video |
| Twitch | twitch.tv/videos/... | VODs and clips |
Apple Podcasts URLs don't work directly with yt-dlp. Extract the RSS feed URL first:
Example:
https://podcasts.apple.com/us/podcast/huberman-lab/id1545953110https://feeds.megaphone.fm/hubermanlab (use this in config)bun run /path/to/bulk-summarize.ts [command]
| Command | Description |
|---|---|
init [name] | Create starter config file |
scan | Find content matching keywords |
summarize | Process pending items |
combine | Merge all summaries into one document |
status | Check progress for all sources |
list | Show configured sources |
reset [source] | Clear checkpoint data |
| Option | Description |
|---|---|
-c, --config <file> | Config file (default: bulk-summarize.json) |
-s, --source <id> | Target specific source |
-n, --limit <n> | Limit items to process |
-p, --parallel <n> | Concurrent summarizations (default: 1) |
-d, --delay <ms> | Delay between items (default: 1000) |
# 1. Create config
bun run bulk-summarize.ts init my-research.json
# 2. Edit config to add sources
# 3. Scan and process
bun run bulk-summarize.ts -c my-research.json scan
bun run bulk-summarize.ts -c my-research.json summarize
bun run bulk-summarize.ts -c my-research.json combine --output research.md
# Search for channels
yt-dlp "ytsearch10:TOPIC podcast" --flat-playlist \
--print "%(channel_url)s %(channel)s" 2>/dev/null | sort -u
# Verify channel
yt-dlp --flat-playlist --print "%(playlist_uploader)s" \
--playlist-end 1 "https://www.youtube.com/@ChannelName/videos"
# Test RSS feed
yt-dlp --flat-playlist --print "%(title)s" \
"https://feeds.megaphone.fm/hubermanlab" --playlist-end 3
To get RSS feed from Apple Podcasts: use WebFetch on the Apple Podcasts URL and look for the feed URL in the response (typically in page metadata or as a direct link).
{
"name": "Project Name",
"keywords": ["keyword1", "keyword2"],
"sources": [
{
"id": "source-id",
"name": "Display Name",
"url": "https://...",
"type": "channel",
"enabled": true
}
],
"settings": {
"maxVideosPerSource": 50,
"summaryLength": "xl",
"summaryPrompt": "Your prompt.\n\nTitle: {title}",
"outputDir": "summaries"
}
}
| Length | Use Case |
|---|---|
short | Quick overview (<15 min content) |
medium | Standard summary |
long | Detailed notes |
xl | Comprehensive coverage |
xxl | Maximum detail (2+ hour content) |
summarize handles this automaticallysummaries/
source-id/
.checkpoint.json # Progress tracking
episode1.md # Individual summaries
episode2.md
# Test URL directly
yt-dlp --flat-playlist --print "%(title)s" "URL" --playlist-end 3
references/config-templates.md - Ready-to-use configs for common use casesreferences/prompt-patterns.md - Effective prompts by content typereferences/platform-guide.md - Platform-specific URL formats and tipsexamples/podcast-research.json - Multi-source podcast researchexamples/conference-talks.json - Conference playlist digestexamples/multi-platform.json - Cross-platform research setupCreate distinctive, production-grade frontend interfaces with high design quality. Use this skill when the user asks to build web components, pages, or applications. Generates creative, polished code that avoids generic AI aesthetics.
This skill should be used when the user asks to "create a hookify rule", "write a hook rule", "configure hookify", "add a hookify rule", or needs guidance on hookify rule syntax and patterns.