youtube-archiver

Archive YouTube playlists into markdown notes with metadata, transcripts, AI summaries, and tags. Use when a user asks to import/sync YouTube playlists, archive Watch Later or Liked videos, enrich YouTube notes, batch process video notes, or automate recurring YouTube-to-markdown sync jobs with cron.

Safety Notice

This listing is from the official public ClawHub registry. Review SKILL.md and referenced scripts before running.

Copy this and send it to your AI assistant to learn

Install skill "youtube-archiver" with this command: npx skills add benmillerat/youtube-archiver

YouTube Archiver

Use this skill to import YouTube playlists into markdown files and optionally enrich notes with transcript, summary, and tagging.

Requirements

  • Python 3.7+
  • yt-dlp (pip install yt-dlp or brew install yt-dlp)
  • A browser signed into YouTube (for private playlists like Liked/Watch Later)
  • macOS: terminal needs Full Disk Access to read browser cookies
  • Windows: browser cookie extraction can be flaky; cookies_file export is the safer path
  • Linux: works on desktop installs; headless servers need cookies_file

First-run setup flow (interactive)

If no config exists at <output>/.config.json, ask these questions before running scripts.

Required questions

  1. Where should archived notes be stored?
    • Default: ./YouTube-Archive
  2. Which playlists should be archived?
    • Accept playlist IDs or URLs
    • Default: LL (Liked Videos), WL (Watch Later)
  3. Which browser is signed into YouTube for cookie auth?
    • Default: chrome

Optional enrichment questions

Ask only if the user wants summaries/tags.

  1. Generate AI summaries? (yes/no)
  2. Summary provider? (openai, gemini, anthropic, openrouter, ollama, none)
  3. Summary model name?
  4. API key env var name?
  5. Enable auto-tagging? (yes/no)
  6. Tagging provider/model/env var?
  7. Keep default tags or define custom vocabulary?

First-run execution sequence

  1. Run init:
    • python3 <skill>/scripts/yt-import.py --output <output-dir> --init
  2. Edit <output-dir>/.config.json from the user’s answers.
  3. Verify auth with dry run:
    • python3 <skill>/scripts/yt-import.py --output <output-dir> --dry-run
  4. Run real import.
  5. Run enrichment (optional):
    • python3 <skill>/scripts/yt-enrich.py --output <output-dir> --limit 10

One-shot quick start

Use this for immediate manual sync:

python3 <skill>/scripts/yt-import.py --output <output-dir>
python3 <skill>/scripts/yt-enrich.py --output <output-dir> --limit 10

Useful import flags:

  • --dry-run
  • --playlist <ID> (repeatable)
  • --no-summary
  • --no-tags
  • --cookies <path/to/cookies.txt>
  • --browser <name>

Useful enrich flags:

  • --dry-run
  • --limit <N>
  • --strict-config

Idempotency and safety behavior

  • Import skips already archived videos by video_id.
  • Filenames include video ID: Title [video_id].md.
  • Enrichment skips notes where frontmatter has enriched: true.
  • Lockfile prevents concurrent runs: <output-dir>/.yt-archiver.lock.

Automation with cron (single-agent default)

Offer cron only after one successful manual run.

Example schedule (daily 11:00):

  1. Import new videos
  2. Enrich a bounded batch

Example task text:

  • Run yt-import.py for <output-dir>, then run yt-enrich.py --limit 10 for the same output.

Keep it single-agent by default. Do not assume multi-agent routing.

Troubleshooting and provider details

Read these references when needed:

  • Provider setup, model suggestions, cost: references/providers.md
  • Common failures and fixes: references/troubleshooting.md
  • Default summary prompt template: references/default-summary-prompt.md

Source Transparency

This detail page is rendered from real SKILL.md content. Trust labels are metadata-based hints, not a safety guarantee.

Related Skills

Related by shared tags or category signals.

General

Wangdongjie Cfo Skill

基于王东杰26年实战经验,提供A+H双市场IPO操盘、资本杠杆设计、业财融合和AI数字化风控咨询。

Registry SourceRecently Updated
General

Hk Stock Morning Report

Generate HK stock market morning report (股市晨報) for Chinese bank trading desk. Use when user asks "生成晨报", "股市晨报", "今日股市", "港股晨報", or any similar HK stock mark...

Registry SourceRecently Updated
General

Nansen Mpp Payment

Pay-per-call access to the Nansen API via MPP (Tempo). Use when a user wants anonymous Nansen access without an API key and without managing their own Base/S...

Registry SourceRecently Updated
General

Etsy Autolist

Auto-create and manage digital product listings on Etsy. Creates listings from existing digital product files (PDFs, templates, spreadsheets) using Etsy Open...

Registry SourceRecently Updated