360 Secure SkillHub
360 安全技能中心

Spotify控制

这是一款Spotify控制工具,核心功能涵盖播放/暂停/切换、搜索歌曲/专辑/艺术家、管理播放列表、音量调节及显示当前播放状态。支持通过命令行指令或Python代码调用,依赖spicetify-cli运行,适用于播放背景音乐、语音控制、定时白噪音、自动化DJ等场景,输出结构化播放信息。

534422530
534422530
热度 31.00
最近更新 2026-05-11 17:46:21
分类:生活依赖:代码执行 / 第三方 API应用场景:自动化脚本 / 日程安排

安装技能

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

执行命令安装此 skill: npx secure-skills-cli add laosi-spotify
Metadata
name
spotify-controller
description
Spotify控制技能 - 终端控制Spotify播放、搜索、管理播放列表。
metadata
{"openclaw":{"requires":{"bins":["spotifyd","spotify-cli"]},"install":[]}}
tags
["spotify","music","playback","playlist","control"]
version
1.0.0
author
laosi
source
adapted

Spotify Controller - Spotify控制

激活词: Spotify / 播放音乐 / 控制音乐

安装

# Windows: 使用PowerShell或第三方CLI
# 推荐: spicetify-cli
winget install spicetify-cli

功能

  • 播放/暂停/切换
  • 搜索歌曲/专辑/艺术家
  • 管理播放列表
  • 显示当前播放
  • 音量控制

Python实现

import subprocess
import json

class SpotifyController:
    def __init__(self):
        self.cmd_prefix = "spicetify"
    
    def play(self):
        subprocess.run([self.cmd_prefix, "play"], capture_output=True)
    
    def pause(self):
        subprocess.run([self.cmd_prefix, "pause"], capture_output=True)
    
    def next_track(self):
        subprocess.run([self.cmd_prefix, "next"], capture_output=True)
    
    def prev_track(self):
        subprocess.run([self.cmd_prefix, "previous"], capture_output=True)
    
    def search(self, query: str) -> list:
        result = subprocess.run(
            [self.cmd_prefix, "search", query, "--json"],
            capture_output=True, text=True
        )
        if result.stdout:
            return json.loads(result.stdout)
        return []
    
    def now_playing(self) -> dict:
        result = subprocess.run(
            [self.cmd_prefix, "status", "--format", "json"],
            capture_output=True, text=True
        )
        if result.stdout:
            return json.loads(result.stdout)
        return {}
    
    def set_volume(self, level: int):
        subprocess.run([self.cmd_prefix, "volume", str(level)], capture_output=True)

命令行操���

# 播放控制
spicetify play
spicetify pause
spicetify next
spicetify previous

# 搜索
spicetify search "周杰伦"

# 显示状态
spicetify status

# 音量
spicetify volume 80

播放列表操作

def create_playlist(name: str, tracks: list):
    subprocess.run([self.cmd_prefix, "playlist", "create", name])
    for track in tracks:
        subprocess.run([self.cmd_prefix, "playlist", "add", track])

def play_playlist(playlist_id: str):
    subprocess.run([self.cmd_prefix, "playlist", "play", playlist_id])

输出格式

## 当前播放

### 歌曲信息
- 标题: 晴天
- 艺术家: 周杰伦
- 专辑: 叶惠美
- 时长: 4:29
- 进度: 1:23 / 4:29

### 状态
- 状态: 播放中
- 音量: 75%
- 随机: 关闭
- 循环: 关闭

### 播放列表
- 列表: 我的收藏
- 歌曲数: 128首

使用场景

  1. 播放背景音乐
  2. 语音控制音乐
  3. 定时播放白噪音
  4. 自动化DJ