AgentStack
SKILL verified MIT Self-run

Sources

skill-kennethleungty-claude-music-sources · by kennethleungty

Sources — add, edit, or remove streams and genres

No reviews yet
0 installs
10 views
0.0% view→install

Install

$ agentstack add skill-kennethleungty-claude-music-sources

✓ scanned · ✓ verified — works with Claude Code, Cursor, and more.

Security review

✓ Passed

No 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.

Are you the author of Sources? Claim this listing to set pricing, connect Stripe payouts, and keep 70% of every sale.
Sign up to claim

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:

  1. Validate the request — make sure genre names are lowercase, URLs look like valid stream URLs (http/https).
  2. 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 for url: properties.
  3. Confirm — show what changed in a brief, clear message.
  4. 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.

Install and usage instructions live in the source repository linked above.

Reviews

No reviews yet — be the first.

Versions

  • v0.1.0 Imported from the upstream source.