/install dj-mp3-sourcer
DJ MP3 Sourcer
DJ-oriented music downloading skill. Takes any music link and finds the best available source, prioritizing extended mixes and MP3 320k output.
⚠️ Legal Notice: This skill is intended for downloading music you have the right to access — purchases, free releases, creative commons, etc. Respect copyright laws in your jurisdiction. The author is not responsible for misuse.
Dependencies
pip install yt-dlp spotdl
brew install ffmpeg # needed by yt-dlp for audio extraction
# optional
pip install bandcamp-dl # for free bandcamp downloads
Source Priority
Search in this order — stop at the first match:
- Bandcamp — supports artists directly, often has extended mixes
- Beatport — DJ-standard, has BPM/key metadata, extended mixes
- Amazon Music — digital purchase option
- Spotify (via
spotdl) — good metadata/tagging, 320k MP3 - YouTube (via
yt-dlp) — fallback, always works
For paid sources (bandcamp, beatport, amazon), surface the purchase link with price. For free sources, download directly.
If free only mode is enabled, skip steps 1-3 and go straight to spotdl → yt-dlp.
Core Rule: Prefer Extended Mixes
Always prefer the extended mix over radio edits. An extended mix from a lower-priority source beats a radio edit from a higher-priority one.
Example: extended mix on YouTube > radio edit on Spotify.
When searching, append "extended mix" to queries. If only a radio edit exists, note it in the output.
Workflow
- Identify the track — extract artist + title:
yt-dlp --dump-json "\x3Curl>" | jq '{title, artist: .artist // .uploader, duration}' - Search each source using web_search:
"\x3Cartist> \x3Ctitle> extended mix site:bandcamp.com" "\x3Cartist> \x3Ctitle> extended mix site:beatport.com" "\x3Cartist> \x3Ctitle> site:amazon.com/music" - Download or link — free sources download; paid sources return purchase URL with price
- Tag the file — artist, title, album, cover art. Note BPM/key if available from beatport.
Download Commands
spotdl
spotdl download "\x3Cspotify-url>" --output "{artist} - {title}" --format mp3 --bitrate 320k
yt-dlp
yt-dlp -x --audio-format mp3 --audio-quality 0 \
--embed-thumbnail --add-metadata \
--metadata-from-title "%(artist)s - %(title)s" \
-o "%(artist)s - %(title)s.%(ext)s" "\x3Curl>"
Post-Download: Filename Normalization
yt-dlp filenames are often messy (NA - prefixes, (Official Video) suffixes, label names, wrong artist credits). Always run the normalization script after downloads complete.
Usage:
# 1. Write the tracklist as JSON (from the parsed tracklist in step 2)
cat > /tmp/tracklist.json \x3C\x3C 'EOF'
[{"artist": "Karol G", "title": "Ivonny Bonita"}, {"artist": "Doja Cat", "title": "Woman (Never Dull's Disco Rework)"}]
EOF
# 2. Run the normalize script
scripts/normalize-filenames.sh ~/Downloads/set-name /tmp/tracklist.json
The script fuzzy-matches each mp3 in the directory to a tracklist entry and renames to clean Artist - Title.mp3 format. Unmatched files are left untouched.
The tracklist is the source of truth for filenames, not YouTube metadata.
Configuration
| Setting | Default | Notes |
|---|---|---|
| Output directory | ~/Downloads/ |
Where files are saved (subfolder per set when used with dj-set-ripper) |
| Format | mp3 320k | High-bitrate MP3; configurable to flac if needed |
| Extended mix | always | Prefer extended/original mix over radio edit |
| Free only | false | When true, skip paid sources (bandcamp, beatport, amazon) — only use spotdl and yt-dlp |
Batch Processing
When given multiple links, process in parallel using sub-agents (sessions_spawn). Report results as each track completes.
Edge Cases
- DJ mixes / long sets — download via yt-dlp directly, skip source searching
- Unavailable tracks — report clearly, suggest alternatives if found
- Region-locked content — note restriction, try alternative sources
- Remix vs original — if the link is a specific remix, search for that exact remix, not the original
- 确保已安装 OpenClaw(本地或 Docker 部署)
- 在对话框中输入安装命令:
/install dj-mp3-sourcer - 安装完成后,直接呼叫该 Skill 的名称或使用
/dj-mp3-sourcer触发 - 根据 Skill 的参数说明提供必要输入,即可获得结构化输出
DJ mp3 sourcer 是什么?
Download music from links (YouTube, Spotify, etc.) by finding the best available source. Searches across platforms in priority order: Bandcamp, Beatport, Ama... 它是一个面向 Claude Code / OpenClaw 的 AI Agent Skill 插件,目前累计下载 826 次。
如何安装 DJ mp3 sourcer?
在 OpenClaw 或 Claude Code 对话框中运行命令「/install dj-mp3-sourcer」即可一键安装,无需额外配置。
DJ mp3 sourcer 是免费的吗?
是的,DJ mp3 sourcer 完全免费(开源免费),可自由下载、安装和使用。
DJ mp3 sourcer 支持哪些平台?
DJ mp3 sourcer 跨平台运行,可在任意部署了 OpenClaw / Claude Code 的环境中使用(cross-platform)。
谁开发了 DJ mp3 sourcer?
由 robin(@robinnnnn)开发并维护,当前版本 v1.0.2。