← 返回 Skills 市场
scavin

Music Skill

作者 scavin · GitHub ↗ · v0.0.2 · MIT-0
cross-platform ⚠ suspicious
381
总下载
1
收藏
2
当前安装
2
版本数
在 OpenClaw 中安装
/install go-music-skill
功能描述
Search songs, download playable audio, fetch lyrics, parse music share links, configure platform cookies, and switch music sources through a local go-music-a...
使用说明 (SKILL.md)

go-music-api

Use this skill to install and run a local go-music-api backend, search tracks across sources, download audio, embed metadata, and recover from source failures.

Primary workflow

Prefer the bundled scripts instead of reimplementing the flow by hand.

Route by platform

  • On Linux or macOS, use scripts/install.sh and scripts/play.sh.
  • On Windows, read docs/windows.md before proceeding.
  • When the user mentions cookies, VIP-only tracks, grey tracks, or login-required tracks, read docs/cookies.md.

Linux/macOS install

Run:

scripts/install.sh

The install script should:

  • install go-music-api into ~/.openclaw/music
  • choose a usable local port
  • start the backend in the background
  • verify health with a local API request

Linux/macOS download

Run:

scripts/play.sh "稻香" "$HOME/.openclaw/media/daoxiang.mp3"

The play script should:

  • search by query
  • handle nested search payloads such as data.data, data.list, or data.songs
  • rank candidates by song title, artist, and source quality
  • avoid karaoke, cover, remix, live, DJ, and instrumental variants when possible
  • download the audio stream to the requested path
  • reuse cached files when an equivalent file already exists
  • call scripts/embed_metadata.py to write title, artist, album, cover art, and embedded lyrics when available

Prefer saving final media under a sendable location such as ~/.openclaw/media/.

Manual API workflow

Use this only for debugging or when the helper scripts need changes.

  1. Ensure the backend is installed and running.
  2. Read ~/.openclaw/music/port on Linux/macOS or %USERPROFILE%\.openclaw\music\port on Windows; default to 8080 if absent.
  3. Search with GET /api/v1/music/search?q={q}.
  4. Parse list results from the top-level response or nested data.* collections.
  5. Choose the best candidate.
  6. Download audio with GET /api/v1/music/stream?id={id}&source={source}.
  7. Treat the stream response as audio bytes, not JSON.
  8. If playback fails, try GET /api/v1/music/switch?... to switch source and retry.
  9. If user provides account cookies, read docs/cookies.md, set them with POST /api/v1/system/cookies, and verify with GET /api/v1/system/cookies.
  10. Fetch lyrics with GET /api/v1/music/lyric?id={id}&source={source} when needed.

Files and state

Runtime files live under ~/.openclaw/music (Linux/macOS) or %USERPROFILE%\.openclaw\music (Windows):

  • binary: go-music-api (Linux/macOS) or go-music-api.exe (Windows)
  • log: log.txt
  • pid: pid
  • port: port
  • cache index: cache-index.json

Failure handling

  • If installation fails, check platform and architecture detection, GitHub Releases reachability, and required tools such as curl, tar, unzip, and file (Linux/macOS) or the Windows requirements in docs/windows.md.
  • Match release asset names exactly. Do not use loose matching that could select .deb or .rpm packages.
  • Accept only native executables after extraction. Fail immediately for text files, HTML, scripts, or package files. On Windows, validate the PE header (MZ signature).
  • If metadata embedding is required, ensure Python and mutagen are available. If not, skip metadata embedding or install the dependency before retrying.
  • If certain tracks fail due to platform restrictions, ask for platform cookies and apply them via /api/v1/system/cookies before switching sources.
  • If startup health checks fail, inspect the runtime log.txt.
  • If the backend always binds to a fixed port in practice, simplify the port logic instead of pretending dynamic ports work.
安全使用建议
This skill is coherent with its description, but it will download and run a native binary from GitHub Releases and will write files under ~/.openclaw/music and ~/.openclaw/media. Before installing, verify the upstream repository/release (https://github.com/scavin/Music-Skill and the referenced upstream binary repo guohuiyuan/go-music-api), and prefer releases from a known maintainer. Consider running the install in a sandbox or VM if you don't trust the binary. The skill may fetch cover images and lyrics from remote hosts and can accept user-provided cookies (which are sent to the local backend); only provide cookies you are comfortable storing locally and avoid sharing full cookie strings unless you understand the privacy implications. If you want stronger assurance, request checksums/signatures for the release binaries or inspect the upstream go-music-api source and release artifacts first.
功能分析
Type: OpenClaw Skill Name: go-music-skill Version: 0.0.2 The skill is designed to install and manage a local music API backend, which involves high-risk capabilities such as downloading and executing a remote binary from GitHub (guohuiyuan/go-music-api) and handling user authentication cookies for music platforms. While these actions are aligned with the stated purpose in SKILL.md and include some security checks (e.g., verifying native executable headers in scripts/install.sh), the automated execution of remote payloads and the management of sensitive credentials meet the threshold for 'suspicious' under the provided criteria. No evidence of intentional malice or data exfiltration was found.
能力评估
Purpose & Capability
Name/description match the included scripts and instructions. The skill installs and runs a go-music-api binary, talks to its local HTTP API, downloads audio and cover art, and embeds metadata — all expected for a 'music' skill.
Instruction Scope
Runtime instructions are focused on installing/starting a local backend, searching, streaming, and embedding metadata. Note: embed_metadata.py will fetch cover images (remote URLs) and lyric endpoints; docs/cookies.md and SKILL.md instruct users to post account cookies to the local backend when needed. These network operations are coherent with the feature set but mean the skill will perform outbound network requests (GitHub for releases and possibly remote cover image hosts).
Install Mechanism
There is no registry install spec; instead bundled shell/PowerShell scripts fetch release assets from GitHub Releases (api.github.com and browser_download_url) and extract native binaries into ~/.openclaw/music. Downloading from GitHub releases is a common pattern but carries the usual risk of running third-party native binaries — the script includes basic validation (file type / PE header checks).
Credentials
The skill declares no required env vars, credentials, or config paths beyond creating and using ~/.openclaw/music and ~/.openclaw/media. Asking users to provide cookies for login-only tracks is expected and explicitly documented; no unrelated secrets are requested.
Persistence & Privilege
The skill does not set always:true, does not modify other skills, and limits its runtime files to ~/.openclaw/music and ~/.openclaw/media. It runs a background process (the downloaded binary) and records pid/port/log — this is expected for a local backend.
如何使用
  1. 确保已安装 OpenClaw(本地或 Docker 部署)
  2. 在对话框中输入安装命令:/install go-music-skill
  3. 安装完成后,直接呼叫该 Skill 的名称或使用 /go-music-skill 触发
  4. 根据 Skill 的参数说明提供必要输入,即可获得结构化输出
版本历史
v0.0.2
**Added Windows and cookie support documentation.** - Added Windows-specific usage instructions (`docs/windows.md`). - Added documentation for configuring platform cookies for VIP or login-required tracks (`docs/cookies.md`). - Updated SKILL.md to reflect Windows support and cookie workflow. - Clarified platform-specific steps and runtime file locations.
v0.0.1
- Initial release of go-music-skille (v0.0.1), providing a local go-music-api backend integration for Linux and macOS. - Supports searching for songs, downloading playable audio, fetching lyrics, parsing music share links, and switching music sources via helper scripts. - Offers robust failure handling for platform checks, dependency requirements, release asset selection, and backend health. - Media metadata embedding with Python (mutagen), and caching of downloaded files. - Not supported natively on Windows.
元数据
Slug go-music-skill
版本 0.0.2
许可证 MIT-0
累计安装 2
当前安装数 2
历史版本数 2
常见问题

Music Skill 是什么?

Search songs, download playable audio, fetch lyrics, parse music share links, configure platform cookies, and switch music sources through a local go-music-a... 它是一个面向 Claude Code / OpenClaw 的 AI Agent Skill 插件,目前累计下载 381 次。

如何安装 Music Skill?

在 OpenClaw 或 Claude Code 对话框中运行命令「/install go-music-skill」即可一键安装,无需额外配置。

Music Skill 是免费的吗?

是的,Music Skill 完全免费,采用 MIT-0 许可证,可自由下载、安装和使用。

Music Skill 支持哪些平台?

Music Skill 跨平台运行,可在任意部署了 OpenClaw / Claude Code 的环境中使用(cross-platform)。

谁开发了 Music Skill?

由 scavin(@scavin)开发并维护,当前版本 v0.0.2。

💬 留言讨论