Prep a messy download library for Jellyfin
When to use: Before pointing Jellyfin at a folder full of release-group-named chaos.
Prerequisites
- Skill installed — git clone https://github.com/Innei/media-library-organizer-skill ~/.claude/skills/media-library-organizer-skill
- TMDB API key for completeness checks — themoviedb.org -> Settings -> API -> free key
Flow
-
Scan and analyzeUse media-library-organizer on /media/downloads. Scan-only — list junk, duplicates, scattered episodes.✓ Copied→ Report with 3 sections: junk / duplicates / scattered
-
Auto-clean junk (safe tier)Proceed with junk cleanup (.DS_Store, SMB metadata, empty dirs).✓ Copied→ Small deletions, nothing risky
-
Confirm and merge duplicatesNow consolidate duplicates — I'll approve each.✓ Copied→ One-by-one approvals with title/year/quality shown
-
Normalize folder namesRename to
Title (Year)format — warn if anything is currently seeding.✓ Copied→ Seed warning surfaces before renames -
Verify via TMDBCross-check episode counts against TMDB — list missing.✓ Copied→ Per-show missing-episode list
Outcome: Jellyfin/Plex recognizes everything; missing gaps are explicit.
Pitfalls
- Rename breaks an active torrent seed — Skill warns; stop the torrent or hard-link before renaming
- Merging different-quality versions loses the good one — Skill prioritizes higher quality — double-check before confirming