ClawKit Logo
ClawKitReliability Toolkit
Back to Registry
Official Verified

dj-mp3-sourcer

Download music from links (YouTube, Spotify, etc.) by finding the best available source. Searches across platforms in priority order: Bandcamp, Beatport, Amazon Music, Spotify (via spotdl), YouTube (via yt-dlp). Use when a user sends music links and wants high-quality audio files downloaded, or when batch-downloading tracks from mixed sources. Handles single tracks or batch lists. Surfaces purchase links for paid platforms, downloads directly from free sources. Default output is MP3 320k. Supports a "free only" mode that skips paid platforms entirely.

skill-install — Terminal

Install via CLI (Recommended)

clawhub install openclaw/skills/skills/robinnnnn/dj-mp3-sourcer
Or

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:

  1. Bandcamp — supports artists directly, often has extended mixes
  2. Beatport — DJ-standard, has BPM/key metadata, extended mixes
  3. Amazon Music — digital purchase option
  4. Spotify (via spotdl) — good metadata/tagging, 320k MP3
  5. 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

  1. Identify the track — extract artist + title:
    yt-dlp --dump-json "<url>" | jq '{title, artist: .artist // .uploader, duration}'
    
  2. Search each source using web_search:
    "<artist> <title> extended mix site:bandcamp.com"
    "<artist> <title> extended mix site:beatport.com"
    "<artist> <title> site:amazon.com/music"
    
  3. Download or link — free sources download; paid sources return purchase URL with price
  4. Tag the file — artist, title, album, cover art. Note BPM/key if available from beatport.

Download Commands

spotdl

spotdl download "<spotify-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" "<url>"

Configuration

SettingDefaultNotes
Output directory~/Music/downloads/Where files are saved
Formatmp3 320kHigh-bitrate MP3; configurable to flac if needed
Extended mixalwaysPrefer extended/original mix over radio edit
Free onlyfalseWhen 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

Metadata

Author@robinnnnn
Stars1133
Views0
Updated2026-02-18
View Author Profile
AI Skill Finder

Not sure this is the right skill?

Describe what you want to build — we'll match you to the best skill from 16,000+ options.

Find the right skill
Add to Configuration

Paste this into your clawhub.json to enable this plugin.

{
  "plugins": {
    "official-robinnnnn-dj-mp3-sourcer": {
      "enabled": true,
      "auto_update": true
    }
  }
}
Safety NoteClawKit audits metadata but not runtime behavior. Use with caution.