xiaohongshu
xiaohongshu
bulk-summarize
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/podca...
Full skill instructions
A 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 setupxiaohongshu
technical spec
product ux expert
database patterns
Conduct multi-agent task orchestration and workflow coordination.
Initialize project with Conductor artifacts (product definition,
Expert in web animations, transitions, and motion design using Framer Motion and CSS
Creates Mermaid and ASCII diagrams for flowcharts, architecture, ERDs, state machines, mindmaps, and more. Use when user mentions diagram, flowchart, mermaid, ASCII diagram, text diagram, terminal diagram, visualize, C4, mindmap, architecture diagram, sequence diagram, ERD, or needs visual docume...
PostgreSQL bindings for H3 hexagonal grid system. Use when working with H3 cells in Postgres, including spatial indexing, geometry/geography integration, and raster analysis.
Context-Driven Development skill for projects using Conductor. Use this skill when you detect a `conductor/` directory in the project, when working on tasks defined in a `plan.md` file, or when the user asks about tracks, specs, or plans. Automatically applies TDD workflow, tracks task completion...
Display project status, active tracks, and next actions
Official Stakpak application containerization standard operating procedure, a step-by-step guidline to properly dockerize applications. This is a rule book curated by the Stakpak Team.
Generate, edit, and beat-sync AI video with leading models in one workspace.
The world's fastest calendar for remote work
Transform Your Design with AI Designer by ImgCreator.ai
Revolutionizing Video Production with AI-Powered Creativity
Extend an image past the frame and let AI fill the new aspect ratio.
Discover your celebrity doppelgänger with StarByFace!
ChainClarity explains 700+ crypto whitepapers in plain English, with layered summaries, comparisons, research tools, alerts, and a $4.99 Pro plan.
Opus.ai: Revolutionize Your Web Experience