← Back to Skills Marketplace
MusicPlaylistGen
by
Ju-Chiang Wang
· GitHub ↗
· v1.0.3
· MIT-0
137
Downloads
0
Stars
0
Active Installs
4
Versions
Install in OpenClaw
/install playlistgen
Description
Generate natural language playlists from your local music library using LLMs, accessible via web or API after indexing your music folder once.
Usage Guidance
This skill appears to implement the playlist/indexing functionality it advertises, but take these precautions before installing:
- Verify the repository and author (git clone URL and commit history) before running code from an unknown source. The registry metadata shows an owner id but no homepage; confirm you trust the GitHub repo.
- Understand what is sent to external services: the indexer sends file paths, metadata (tags), and constructed prompts to Anthropic or MiniMax. It does NOT upload audio files, but metadata and filenames can be sensitive.
- If you are uncomfortable sending metadata to third-party LLMs, do not provide API keys. Consider running against a local/offline model or skipping the LLM enrichment step.
- Review MUSIC_RULES.md and any rule changes carefully. That file is injected into system prompts; editing it can change LLM behavior and could be abused if populated with untrusted content.
- When running the server, do not set MUSIC_SERVER_URL to a public IP unless you intentionally want network access. By default it listens on localhost:5678; exposing it to LAN/Tailscale will make links reachable by others.
- Inspect the code (playlist_server.py, smart_indexer.py, start.sh) for any network calls and validate the endpoints. There are small inconsistencies in MiniMax endpoint strings; confirm the client libraries or HTTP calls point to the official provider domains before using your real API keys.
- Run in a restricted environment (non-root user, limited network if possible) and backup the generated music.db if you value the indexing work. If you decide to proceed, supply API keys only temporarily and consider rotating keys later.
If you want, I can: (1) produce a short checklist of exact files and lines to inspect for network calls, (2) highlight the parts of the code that construct prompts and what metadata they include, or (3) suggest safer configuration options (local LLM, binding to localhost, firewall rules).
Capability Assessment
Purpose & Capability
Name/description align with the code and instructions: the skill scans a local music folder, uses ffprobe for metadata, enriches tracks using LLMs (Anthropic or MiniMax), stores a SQLite DB, and serves a local web UI. Requesting Anthropic/MiniMax API keys and MUSIC_DIR is appropriate for the stated purpose.
Instruction Scope
The runtime instructions and code send extracted metadata and file paths to third‑party LLM endpoints for enrichment (expected for functionality), but the skill also loads and injects MUSIC_RULES.md into LLM system prompts. Editable rules become part of prompts — a potential vector for prompt injection and untrusted content influencing LLM behavior. The SKILL.md itself contains a pre-scan 'system-prompt-override' pattern. The indexer does not upload audio, only metadata/tags/paths, but that metadata and file paths may be sensitive. The server can be made reachable on a LAN/Tailscale address if the user sets MUSIC_SERVER_URL — that can expose links to others if misconfigured.
Install Mechanism
No packaged install spec; SKILL.md instructs cloning from GitHub and using a virtualenv + pip to install libraries (requests, openai, anthropic, mutagen). That is proportionate, but the repo source is 'unknown' in the registry metadata (owner id listed) — verify the GitHub repo/author before cloning. There are a couple of small code inconsistencies (different MiniMax base URLs in different files) suggesting sloppy maintenance but not necessarily malicious installs.
Credentials
Only expects MUSIC_DIR, ANTHROPIC_API_KEY and/or MINIMAX_API_KEY, plus optional PORT/MUSIC_SERVER_URL/DB_PATH — these are proportionate. The code reads .env into process environment. Providing LLM API keys is required for full functionality; if you supply keys they will be used to call external LLM endpoints with file metadata and prompts.
Persistence & Privilege
The skill does not request 'always: true' or other elevated skill-level privileges. It runs a local HTTP server and writes a persistent SQLite DB (music.db) containing metadata and LLM enrichments; this is expected behavior for the feature and does not appear to modify other skills or system-wide settings.
How to Use
- Make sure OpenClaw is installed (local or Docker)
- Run the install command in chat:
/install playlistgen - After installation, invoke the skill by name or use
/playlistgen - Provide required inputs per the skill's parameter spec and get structured output
Version History
v1.0.3
Version 1.0.3
- Added a sample environment configuration file (`env.sample`) to the repository.
- Updated setup instructions to refer to `env.sample` instead of `.env.example` for environment variable configuration.
v1.0.2
Version 1.0.2
- Removed non-essential documentation files (AGENT.md, TOOLS.md) for a cleaner repository.
- No functional or API changes; all setup and operational instructions unchanged.
- Documentation and user workflow remain as before.
v1.0.1
PlaylistGen 1.0.1 introduces initial standalone script support and improved documentation.
- Added AGENT.md and TOOLS.md for agent and tool documentation.
- Introduced playlist_server.py as the main server for playlist generation.
- Added smart_indexer.py script for efficient music library indexing.
- Included start.sh for simplified server startup.
- No API or day-to-day usage changes; this release primarily adds script and documentation files.
v1.0.0
Initial release — LLM-powered playlist generation with Claude Haiku, music indexing, natural language search, and web player
Metadata
Frequently Asked Questions
What is MusicPlaylistGen?
Generate natural language playlists from your local music library using LLMs, accessible via web or API after indexing your music folder once. It is an AI Agent Skill for Claude Code / OpenClaw, with 137 downloads so far.
How do I install MusicPlaylistGen?
Run "/install playlistgen" in the OpenClaw or Claude Code chat to install it in one step — no extra setup required.
Is MusicPlaylistGen free?
Yes, MusicPlaylistGen is completely free, licensed under MIT-0. You can download, install and use it at no cost.
Which platforms does MusicPlaylistGen support?
MusicPlaylistGen is cross-platform and runs anywhere OpenClaw / Claude Code is available (cross-platform).
Who created MusicPlaylistGen?
It is built and maintained by Ju-Chiang Wang (@asriverwang); the current version is v1.0.3.
More Skills