Communitygithub.com

ni-shiliu/neil-control

Steuert die Musikwiedergabe auf macOS (Spotify) über die CLI – proaktiv und reaktiv.

Was ist neil-control?

Dieses Skill ermöglicht es einem KI-Agenten (z. B. Claude Code), die Musikwiedergabe auf macOS (aktuell Spotify) direkt über die Kommandozeile zu steuern. Es kann Titel abspielen, pausieren, überspringen, nach Songs suchen, Wiedergabelisten verwalten und sogar die Stimmung des Benutzers erkennen, um passende Musik vorzuschlagen. Das Skill unterstützt proaktive Auslöser, sodass der Agent ohne explizite Aufforderung Musik abspielen kann, wenn der Benutzer beispielsweise einen neuen Programmierabschnitt beginnt, einen Fehler behoben hat oder gestresst wirkt. Es wird über eine einfache Python-CLI bereitgestellt und benötigt weder einen Spotify-API-Key noch eine OAuth-Einrichtung – die Suche erfolgt über die anonyme Web Player API. Das Skill ist ideal, um Arbeitsabläufe durch kontextbezogene Musikwiedergabe zu verbessern.

Funktioniert mit✓Claude Code~Codex CLI~Cursor
npx skills add ni-shiliu/neil-control

In Ihrer bevorzugten KI fragen

Öffnet einen neuen Chat, in dem dieser Agent-Skill bereits geladen ist.

Dokumentation

Beschränkt die Musiksteuerung vorerst auf Spotify

Musiksteuerung

Steuert KuGou Music oder Spotify auf macOS über die CLI. Verwenden Sie es, um die Arbeitssitzung des Benutzers mit Musik zu bereichern – proaktiv und reaktiv.

Einrichtung

Voraussetzungen: macOS, Python 3.10+, installierte Desktop-App von KuGou Music oder Spotify.

Es wird kein Spotify-API-Key oder OAuth-Setup benötigt – die Suche nutzt die anonyme Web Player API.

CLI

MUSIC="python3 ~/.claude/skills/music-control/scripts/music_cli.py"
$MUSIC [--provider kugou|spotify] <Befehl>
BefehlBeschreibung
statusAktuelle Titelinformationen (JSON)
playWiedergabe starten/pausieren
nextZum nächsten Titel springen
prevVorherigen Titel abspielen
play-by <Titel>...Suchen und sofort abspielen; mehrere Songs mit `(
search <Abfrage> [--page N]Suchen mit Seitenumblättern
recommend <Stimmung>Nach Stimmung auswählen und abspielen
queue-showAktuelle Warteschlange anzeigen
queue-add <Titel>...Songs zur Warteschlange hinzufügen; mehrere Songs mit `(
queue-play [Index]Wiedergabe der Warteschlange starten
queue-nextZum nächsten in der Warteschlange springen
queue-clearWarteschlange leeren

--provider standardmäßig auf spotify. Falls Spotify nicht läuft, wird es automatisch gestartet. Setzen Sie MUSIC_PROVIDER=kugou, um stattdessen KuGou zu verwenden.

Stimmungs-Keywords

StimmungWann verwenden
focusedTiefe Arbeit, Codieren im Flow, Lesen
relaxedLockere Unterhaltung, Pausen, leichte Aufgaben
hypedFeature ausgeliefert, Bug behoben, Erfolge
sadBenutzer äußert Frust, festgefahren bei einem Problem
debugFrustriert, jagt einen kniffligen Bug

Proaktive Auslöser-Regeln

Immer ohne Aufforderung handeln, wenn Sie Folgendes erkennen:

Signal im GesprächAktion
Benutzer beginnt eine neue Codier-Sitzungrecommend focused → Top-Ergebnis abspielen
Benutzer sagt, er hat einen Bug behoben / ausgeliefertrecommend hyped → Top-Ergebnis abspielen
Benutzer ist frustriert / festgefahrenrecommend debug
Benutzer erwähnt, dass er entspannen mussrecommend relaxed
Benutzer erwähnt einen bestimmten Song oder Künstlerplay-by <Song> <Künstler>
Lange Stille / Pause im Gesprächrecommend relaxed
Benutzer sagt „Spiel etwas“ ohne DetailsAus der letzten Gesprächsstimmung ableiten

Warteschlange und mehrere Songs

Mehrere Songs trennen: |||

$MUSIC play-by 逆战 ||| 天下 ||| 这就是爱
$MUSIC queue-add 逆战 ||| 天下
$MUSIC queue-play
$MUSIC queue-next
$MUSIC search 周杰伦 --page 2

Antwortformat

{"ok": true, "title": "晴天", "artist": "周杰伦", "playing": true}
{"ok": true, "results": [{"title":"...", "artist":"...", "id":"..."}]}
{"ok": true, "action": "next"}
{"ok": true, "action": "queue_next", "current": 1, "has_next": true}
{"ok": false, "error": "no_player", "message": "..."}

Hinweise

  • Spotify: Nutzt die anonyme Web Player API für die Suche – kein Login oder API-Key erforderlich
  • KuGou: Erfordert die installierte macOS-App von KuGou Music
  • Wenn status no_player zurückgibt, lädt die App möglicherweise noch – 3s warten und erneut versuchen
  • Die Warteschlange wird in ~/.config/music-cli/queue.json gespeichert

Verwandte Skills