Skip to content

Repository files navigation

YouTube Intelligence

Fine-grained YouTube playlist organizer + Claude-powered research analyzer.

Two things this does:

  1. Organizes your YouTube library into precise, narrow playlists — no more 300-video "Photography" dumpster. Claude proposes splits like Photography - Camera Technique / Photography - Drone / Photography - Editing, you confirm, it actually executes the moves.

  2. Evaluates research playlists with verdicts against your stack — drop videos into Research - Claude Code or Research - MCP Servers, run the analyzer, and Claude renders BUILD_NOW / ADOPT / IMPROVE_ON / REDUNDANT / AVOID / SKIP verdicts comparing each video to what you already run (defined in stack_profile.md).


Documentation

Doc What it covers
SETUP.md First-time setup — Google Cloud OAuth, Anthropic key, config.yaml, cookies
USAGE.md Day-to-day commands, when to use each, example workflows
stack_profile.md.template Template — copy to stack_profile.md and edit. Directly controls verdict quality.
docs/ARCHITECTURE.md Code internals, data flow, database schema
docs/TROUBLESHOOTING.md Common errors and fixes

The Commands

.venv\Scripts\python.exe main.py auth-test    # verify OAuth (zero cost)
.venv\Scripts\python.exe main.py drain-wl     # migrate Watch Later to Inbox (zero Claude cost)
.venv\Scripts\python.exe main.py organize     # one-time taxonomy build
.venv\Scripts\python.exe main.py classify     # route newly-added videos
.venv\Scripts\python.exe main.py intel        # verdicts on a research playlist

Equivalent slash commands in Claude Code: /yt-drain-wl, /yt-organize, /yt-classify, /yt-intel.

Equivalent desktop shortcuts in triggers/shortcuts/ (5 numbered .lnk files).

Watch Later Limitation

YouTube's Data API cannot read or write Watch Later. Google blocked this in 2016. drain-wl works around it: scrapes WL via yt-dlp + browser cookies, adds each video to a real "Inbox - To Sort" playlist. You then clear WL manually in your browser (single-click options exist — drain-wl prints instructions). Going forward, save into Inbox - To Sort directly instead of clicking Watch Later, and the problem never returns.


Requirements

  • Windows 11, Python 3.10+ (tested on 3.14)
  • Google account (for YouTube OAuth)
  • Anthropic API key (separate from Claude Pro subscription — preloaded credits)
  • Obsidian vault (optional — output notes are written here)
  • n8n instance (optional — webhooks fire here)

Cost

API costs are billed separately from Claude Pro. Typical usage:

Command Model Cost per run
organize (rare) Opus 4.6 ~$1.43
classify (frequent) Sonnet 4.6 ~$0.05
intel (per ~20-video playlist) Sonnet 4.6 ~$0.51

Typical month: ~$1.70. $10-20 in starting credits lasts months.

Models are configurable per-command in config.yaml. See CLAUDE.md for the tiering reasoning.


Status

Scaffolded and ready for first run. See SETUP.md for the 7-step first-time setup.

About

YouTube playlist auto-organizer plus Claude-powered research analyzer with stack-aware verdicts

Topics

Resources

Stars

1 star

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages