Install
$ agentstack add skill-kennethleungty-claude-music-sources ✓ scanned · ✓ verified — works with Claude Code, Cursor, and more.
Security review
✓ PassedNo issues found. Passed automated security review. · v0.1.0 How review works →
- ✓ Prompt-injection patterns
- ✓ Secret / credential exfiltration
- ✓ Dangerous shell & filesystem operations
- ✓ Untrusted network calls
- ✓ Known-malicious package signatures
What it can access
- ✓ Network access No
- ✓ Filesystem access No
- ✓ Shell / process execution No
- ✓ Environment & secrets No
- ✓ Dynamic code execution No
From automated source analysis of v0.1.0. “Used” means the capability is present in the source — more access means more to trust, not that it’s unsafe.
About
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.
Source & license
This open-source skill is cataloged on AgentStack and links to its original source — we do not rehost the code.
- Author: kennethleungty
- Source: kennethleungty/claude-music
- License: MIT
Install and usage instructions live in the source repository linked above.
Reviews
No reviews yet — be the first.
Write a review
Versions
- v0.1.0 Imported from the upstream source.