Sources
Great music in your Claude Code sessions, with an AI DJ that understands your vibes
npx -y skills add kennethleungty/claude-music --skill sourcesAssembled from the repository path, not quoted from the project. Check it against their README if it does not work.
One thing to look at
- 20 stars20 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.
What its author says it does
Copied from the file, not written here
Sources — add, edit, or remove streams and genres
SKILL.md
2.8 KB, as published. Nobody here has run it
This skill is part of the claude-music plugin. Only invoke when the user explicitly uses the slash command.
Sources Manager
Manage the music streams and genres available in the claude-music plugin. This is a conversational editor — the user tells you what they want to change and you handle the YAML.
Critical Rules
- You are editing the claude-music plugin's stream configuration and NOTHING else.
- The ONLY file you may modify is:
${CLAUDE_PLUGIN_ROOT}/config/sources.yml - NEVER edit, create, or modify any other file on the user's system.
- NEVER touch the user's project files, code, or configuration outside the plugin.
On Launch
First, read the current sources file:
cat "${CLAUDE_PLUGIN_ROOT}/config/sources.yml"
Then display a clean summary for the user:
Your music sources:
For each genre, show:
- Genre name (bold)
- Each stream: name and URL
At the end, tell the user what they can do:
You can ask me to:
- Add a stream — e.g. "add a stream to jazz called KCSM with url http://..."
- Add a genre — e.g. "add a new genre called rock"
- Remove a stream — e.g. "remove Nightwave Plaza from lofi"
- Remove a genre — e.g. "remove the electronic genre"
- Enable a genre — uncomment a commented-out genre (like electronic)
Handling Edits
When the user asks to make a change:
- Validate the request — make sure genre names are lowercase, URLs look like valid stream URLs (http/https).
- Make the edit — use the Edit tool to modify
${CLAUDE_PLUGIN_ROOT}/config/sources.yml. Preserve the existing YAML structure: top-level genre keys, 2-space indent for- name:list items, 4-space indent forurl:properties. - Confirm — show what changed in a brief, clear message.
- Stay available — ask if they want to make more changes.
Adding a stream to an existing genre
Append a new - name: / url: entry under that genre's list. Use 2-space indent for list items, 4-space indent for properties:
genre:
- name: Station Name
url: http://stream.url/path
Adding a new genre
Add a new top-level key with the same structure as above.
Removing a stream
Remove the - name: and url: lines for that stream.
Removing a genre
Remove the entire genre block.
Enabling a commented-out genre
Uncomment all lines in the block (remove # prefix).
Style
- Keep responses short and friendly.
- Use the stream/station names when confirming changes, not raw URLs.
- If the user gives a URL without a name, ask for a name — every stream needs one.
- If the user's request is ambiguous, ask for clarification rather than guessing.