--- name: spotify description: Search Spotify tracks, create and manage playlists, and import songs from text files, M3U playlists, or music folders. metadata: {"clawdbot":{"emoji":"music","requires":{"bins":["node"]}}} --- # Spotify Use this skill when the user wants to search Spotify tracks, create playlists, add or remove playlist tracks, or import songs from a text list, M3U/M3U8 playlist, or local music folder. Use the local helper from the installed skill directory: ```bash cd ~/.openclaw/workspace/skills/spotify scripts/spotify --help ``` This skill uses the Spotify Web API with OAuth2 Authorization Code + PKCE. It does not use browser automation for Spotify operations and does not need a Spotify client secret. Do not print token files or OAuth callback data. Use `--json` for machine-readable command output. ## Setup ```bash mkdir -p ~/.openclaw/workspace/.clawdbot/credentials/spotify chmod 700 ~/.openclaw/workspace/.clawdbot/credentials/spotify $EDITOR ~/.openclaw/workspace/.clawdbot/credentials/spotify/config.json cd ~/.openclaw/workspace/skills/spotify scripts/setup.sh ``` `config.json`: ```json { "clientId": "your-spotify-client-id", "redirectUri": "http://127.0.0.1:8888/callback" } ``` ## Commands ```bash scripts/spotify status --json scripts/spotify search "Radiohead Karma Police" --limit 3 --json scripts/spotify list-playlists --limit 10 --json scripts/spotify create-playlist "OpenClaw Mix" --description "Created by OpenClaw" --public --json scripts/spotify add-to-playlist "" "spotify:track:..." --json scripts/spotify remove-from-playlist "" "spotify:track:..." --json scripts/spotify search-and-add "" "Radiohead Karma Police" --json scripts/spotify import "/path/to/tracks.txt" --playlist "Imported Mix" --json ``` `--playlist NAME` creates a new private playlist by default. Use `--playlist-id ID` to update an exact existing playlist. Current Spotify endpoints used by this skill include `/v1/me/playlists` and `/v1/playlists/{id}/items`; do not use the removed `/tracks` playlist mutation endpoints. Spotify has no normal delete-playlist Web API operation. Ask before running live smoke tests that create playlists.