mit einem Klick
resolve-playlist
// Resolve YouTube video IDs for unmatched tracks in a stored playlist. Uses yt-dlp (no API quota). Scores candidates on channel quality, duration match, and title similarity.
// Resolve YouTube video IDs for unmatched tracks in a stored playlist. Uses yt-dlp (no API quota). Scores candidates on channel quality, duration match, and title similarity.
| name | resolve-playlist |
| description | Resolve YouTube video IDs for unmatched tracks in a stored playlist. Uses yt-dlp (no API quota). Scores candidates on channel quality, duration match, and title similarity. |
| triggers | ["resolve youtube ids","resolve playlist","find youtube videos","match youtube"] |
Resolve YouTube video IDs for tracks in the local database using yt-dlp.
yt-dlp must be installed: brew install yt-dlp or pip install yt-dlpspoti-bye resolve --playlist=<id> --threshold=5 --delay=1500
Options:
--playlist=ID — required--threshold=N — minimum score to auto-accept (default: 5; use 1 for aggressive auto-accept)--delay=MS — delay between searches in ms (default: 1500; increase if hitting bot detection)--dry-run — preview without writing to DB--verbose — show scoring details for each candidateEach YouTube candidate is scored on:
Tracks scoring below threshold go to a review file at ~/.spoti-bye/youtube-review-<id>.json.
spoti-bye review # process flagged tracks
If yt-dlp starts failing with "Sign in to confirm", increase --delay or wait a few hours.
for id in $(sqlite3 ~/.spoti-bye/playlists.db "SELECT DISTINCT pt.playlist_id FROM songs s JOIN playlist_tracks pt ON pt.song_id = s.id WHERE s.youtube_video_id IS NULL ORDER BY pt.playlist_id;"); do
echo "=== Playlist $id ==="
spoti-bye resolve --playlist=$id --threshold=1 --delay=1500
done
Interactively review flagged tracks from the YouTube resolver. Edit review JSON files to accept or reject candidates, then run spoti-bye review to apply.
Import a Spotify playlist into the local SQLite database. Supports Spotify URLs (playlist/track/album), Exportify CSVs, and JSON track lists.
Bulk import or sync all Spotify playlists from an Exportify zip export. Detects new, updated, and unchanged playlists. YouTube IDs are preserved on updates.