← Back to Skills Marketplace
kadaliao

Youtube Music Player

by kadaliao · GitHub ↗ · v0.2.0 · MIT-0
cross-platform ✓ Security Clean
171
Downloads
0
Stars
0
Active Installs
4
Versions
Install in OpenClaw
/install ytmusic-player
Description
Operate YouTube Music via natural language. Search songs, artists, albums, playlists, lyrics, charts, recommendations, and control playback. Browse personal...
Usage Guidance
This skill is internally consistent for controlling YouTube Music, but it requires you to provide browser cookies (a raw Cookie header or an exported cookies JSON) so it can perform authenticated actions. Cookies are very sensitive — anyone with them can act as you on music.youtube.com. Only provide cookies if you trust the skill and the environment running it. Safer options: (1) use a throwaway Google account for this skill, (2) run the skill only on a local machine you control (not in a shared/cloud agent), and (3) after use, remove the saved auth files (.ytmusic/auth.json and ./ .ytmusic/playwright-profile) and revoke the session from your Google account if possible. If you must provide a cookies JSON, restrict it to cookies for music.youtube.com and don't supply paths to unrelated system files. Finally, review the skill source (scripts/helper.py and player_daemon.py) yourself or run it in an isolated environment if you have doubts.
Capability Assessment
Purpose & Capability
Name and description match the delivered files and behavior: helper.py provides search/library/playlist/account operations via ytmusicapi, and player.py + player_daemon.py use Playwright for playback. Requiring a .ytmusic/auth.json config and the uv runner is coherent with the stated functionality.
Instruction Scope
SKILL.md and helper.py explicitly instruct the agent to ask the user for either a raw Cookie header string or a cookies JSON file path and then run local auth setup, which is necessary for authenticated YouTube Music operations. This is narrow and scoped to YT Music auth, but it explicitly asks for sensitive secrets (browser cookies) and instructs the agent to read a file path supplied by the user. That behavior is expected for this use-case but should be treated as sensitive.
Install Mechanism
No external install or download steps are embedded in the skill bundle; the skill is instruction/code-only and relies on the uv runner to pull runtime packages (ytmusicapi, playwright) on demand. No arbitrary URL downloads or archive extraction were found in the provided files.
Credentials
The skill requests no environment variables but requires a local config path (.ytmusic/auth.json) and will persist cookies and a Playwright profile under ./ .ytmusic. Requesting YouTube cookies (including SAPISID) is proportionate to the stated need for authenticated actions, but those are highly sensitive credentials — storing and transmitting them (even locally) increases risk. The helper can import any file path the user provides, so if a user supplies a path to an unrelated sensitive file the agent would attempt to read it.
Persistence & Privilege
The skill creates and persists state in ./ .ytmusic (auth.json, player-daemon.json, playwright-profile) and launches a local daemon (bound to 127.0.0.1) and a persistent browser profile. always:false and no cross-skill config modification are present, so privileges are reasonable, but the persistent browser profile will retain logged-in state and cookies until removed.
How to Use
  1. Make sure OpenClaw is installed (local or Docker)
  2. Run the install command in chat: /install ytmusic-player
  3. After installation, invoke the skill by name or use /ytmusic-player
  4. Provide required inputs per the skill's parameter spec and get structured output
Version History
v0.2.0
Major update: Playback now uses a persistent Playwright browser daemon instead of Chrome CDP. - Added scripts/player_daemon.py for managing a persistent Playwright-based browser session. - Updated playback architecture: playback commands auto-start and reuse a daemon-managed browser; manual Chrome launch is no longer needed. - Removed scripts/launch_chrome.py; Chrome CDP support has been replaced by Playwright. - User now signs into YouTube Music once in the new browser window managed by the daemon. - Updated documentation and commands to reflect new playback workflow and profile management.
v0.1.2
- Added support for launching Chrome using the system user profile with the new `--use-system-profile` and `--profile-directory` options in `scripts/launch_chrome.py`. - Updated playback and troubleshooting instructions in SKILL.md to cover using the system Chrome profile and related caveats. - Improved documentation of profile directory handling and authentication requirements for the Chrome playback session. - No changes to the user-facing commands or API.
v0.1.1
- Added scripts/launch_chrome.py to reliably launch a dedicated Chrome profile for playback control via CDP, especially on macOS. - Updated documentation to recommend scripts/launch_chrome.py for starting Chrome with remote debugging, replacing manual open commands on macOS. - Clarified in SKILL.md that playback commands require a Chrome session started with a unique --user-data-dir, and that users may need to sign in again within that session. - Enhanced troubleshooting and workflow notes for playback reliability.
v0.1.0
Initial release of ytmusic-skill — Operate YouTube Music in natural language. - Search and play songs, albums, artists, playlists, lyrics, charts, and recommendations. - Control playback (play, pause, next, previous, seek, volume) via Chrome with remote debugging enabled. - Browse and manage your personal library and playlists, and rate tracks. - Inspect account info and resolve entities by search or ID. - Requires authentication with a YouTube Music cookie or cookies JSON file for full functionality; includes step-by-step user guidance for auth. - Outputs search results, playlists, and playback status in clear, concise formats.
Metadata
Slug ytmusic-player
Version 0.2.0
License MIT-0
All-time Installs 0
Active Installs 0
Total Versions 4
Frequently Asked Questions

What is Youtube Music Player?

Operate YouTube Music via natural language. Search songs, artists, albums, playlists, lyrics, charts, recommendations, and control playback. Browse personal... It is an AI Agent Skill for Claude Code / OpenClaw, with 171 downloads so far.

How do I install Youtube Music Player?

Run "/install ytmusic-player" in the OpenClaw or Claude Code chat to install it in one step — no extra setup required.

Is Youtube Music Player free?

Yes, Youtube Music Player is completely free, licensed under MIT-0. You can download, install and use it at no cost.

Which platforms does Youtube Music Player support?

Youtube Music Player is cross-platform and runs anywhere OpenClaw / Claude Code is available (cross-platform).

Who created Youtube Music Player?

It is built and maintained by kadaliao (@kadaliao); the current version is v0.2.0.

💬 Comments