360 Secure SkillHub
360 安全技能中心

Spotify Openclaw

面向 OpenClaw 的 Spotify 控制技能:通过 python3 脚本调用 Spotify 接口,支持按名称或 URI 播放、暂停、切歌、音量与随机播放、查看设备与当前曲目;还提供三个时间维度的热门歌曲与歌手、曲风分布、喜欢的歌曲统计,并基于关联艺人发现相似音乐、一键创建并填充歌单。需 macOS、Premium 账号与开发者凭据,凭据存于系统钥匙串。

mixx85
mixx85
热度 60.33
最近更新 2026-05-11 17:32:38
分类:生活依赖:代码执行 / 第三方 API / 读写文件应用场景:推荐 / 数据处理

安装技能

复制下面的话术发给你的 Agent,它会通过 secure-skills 检索并安装该技能。

执行命令安装此 skill: npx secure-skills-cli add spotify-openclaw
Metadata
name
spotify-openclaw
description
Full Spotify Premium control + deep music intelligence for OpenClaw. Playback: play by name/URI/playlist, pause, next, prev, volume, shuffle, queue. Auto-launches Spotify if closed. Analysis: top tracks & artists across 3 time periods, genre profile, liked songs breakdown. Discovery: find similar music via related artists graph — works without Spotify's blocked Recommendations API. One-command playlist builder. Credentials stored in macOS Keychain. Triggers: play, pause, next, volume, shuffle, what's playing, top tracks, genre analysis, find similar music, create playlist.
homepage
https://github.com/mixx85/spotify-openclaw
metadata
{"openclaw":{"emoji":"🎵","install":[{"id":"pip","kind":"pip","package":"spotipy","label":"Install spotipy"}]}}

spotify-openclaw

Full Spotify Premium control + music intelligence for OpenClaw.

Control playback, analyze your taste, and discover new music — all from chat. 100% local, no extra cloud services.

✨ What makes this different

Feature This skill Basic Spotify skills
Playback control ✅ play/pause/next/prev/volume/shuffle/queue ✅
Auto-launch Spotify ✅ opens app if closed, waits, plays ❌
Taste analysis ✅ top tracks & artists × 3 time periods ❌
Genre profile ✅ full genre breakdown ❌
Music discovery ✅ works without blocked Recommendations API ❌
Liked songs search ✅ filter by artist, count, stats ❌
One-command playlists ✅ creates + fills in one command ❌
Multi-language ✅ English + Russian voice triggers ❌

📦 Requirements

⚙️ Setup (one-time)

1. Create Spotify app at developer.spotify.com → add redirect URI: http://127.0.0.1:8888/callback

2. Store credentials in macOS Keychain:

security add-generic-password -a openclaw -s openclaw.spotify.client_id -w "YOUR_CLIENT_ID"
security add-generic-password -a openclaw -s openclaw.spotify.client_secret -w "YOUR_CLIENT_SECRET"

3. Copy script to OpenClaw scripts folder:

cp spotify.py ~/.openclaw/scripts/spotify.py

4. First auth (browser opens once, then token is cached):

python3 ~/.openclaw/scripts/spotify.py now

⚡ Quick start

# Play something
python3 ~/.openclaw/scripts/spotify.py play "Massive Attack"

# What's playing now
python3 ~/.openclaw/scripts/spotify.py now

# Discover new music based on your taste
python3 ~/.openclaw/scripts/spotify.py discover

# Build this month's playlist (creates + fills in one command)
python3 ~/.openclaw/scripts/spotify.py make-playlist "Top March 2026" short 20

🎮 All Commands

Playback

python3 ~/.openclaw/scripts/spotify.py play                    # resume
python3 ~/.openclaw/scripts/spotify.py play "track name"       # search & play
python3 ~/.openclaw/scripts/spotify.py play spotify:track:URI  # by URI
python3 ~/.openclaw/scripts/spotify.py pause
python3 ~/.openclaw/scripts/spotify.py next
python3 ~/.openclaw/scripts/spotify.py prev
python3 ~/.openclaw/scripts/spotify.py volume 70
python3 ~/.openclaw/scripts/spotify.py volume up / down
python3 ~/.openclaw/scripts/spotify.py shuffle on / off
python3 ~/.openclaw/scripts/spotify.py queue "track name"
python3 ~/.openclaw/scripts/spotify.py now
python3 ~/.openclaw/scripts/spotify.py devices

Analysis

python3 ~/.openclaw/scripts/spotify.py top-tracks [short|medium|long] [limit]
python3 ~/.openclaw/scripts/spotify.py top-artists [short|medium|long] [limit]
python3 ~/.openclaw/scripts/spotify.py genres [short|medium|long]
python3 ~/.openclaw/scripts/spotify.py recent [limit]
python3 ~/.openclaw/scripts/spotify.py liked [limit]
python3 ~/.openclaw/scripts/spotify.py liked-all
python3 ~/.openclaw/scripts/spotify.py liked-by-artist "Artist Name"
python3 ~/.openclaw/scripts/spotify.py playlists
python3 ~/.openclaw/scripts/spotify.py search "query" [track|artist|album] [limit]
python3 ~/.openclaw/scripts/spotify.py track-info URI

Periods: short = 4 weeks · medium = 6 months · long = all time

Discovery & Playlists

# Discover by genre profile
python3 ~/.openclaw/scripts/spotify.py discover

# Expand from artist (depth=hops, n=tracks per artist)
python3 ~/.openclaw/scripts/spotify.py discover "Portishead" 3 3

# Related artists
python3 ~/.openclaw/scripts/spotify.py related-artists "The Cure" 10

# Top tracks of any artist
python3 ~/.openclaw/scripts/spotify.py artist-top-tracks "Massive Attack" 5

# Create playlist from top tracks — one command, creates + fills
python3 ~/.openclaw/scripts/spotify.py make-playlist "Top March 2026" short 20

# Manage playlists
python3 ~/.openclaw/scripts/spotify.py create-playlist "My Playlist" "Description"
python3 ~/.openclaw/scripts/spotify.py add-to-playlist PLAYLIST_ID URI1 URI2

Note: Spotify's recommendations and audio_features APIs are blocked for new developer apps. This skill uses related_artists + artist_top_tracks for discovery instead — no workarounds needed.

💡 Agent tips

  • Chain related-artists → artist-top-tracks → add-to-playlist for smart discovery playlists
  • Use liked-by-artist to build themed playlists from your library
  • genres long gives the most accurate taste profile
  • Use playlists to get playlist IDs before playing one

ALWAYS run python3 ~/.openclaw/scripts/spotify.py [cmd] — never respond with text only.