Limitar o controle de música apenas ao Spotify por enquanto
Controle de Música
Controla o KuGou Music ou o Spotify no macOS via CLI. Use-o para melhorar a sessão de trabalho do usuário com música — de forma proativa e responsiva.
Configuração
Requisitos: macOS, Python 3.10+, aplicativo de desktop KuGou Music ou Spotify instalado.
Não é necessária chave de API do Spotify ou configuração OAuth — a pesquisa usa a API anônima do Web Player.
CLI
MUSIC="python3 ~/.claude/skills/music-control/scripts/music_cli.py"
$MUSIC [--provider kugou|spotify] <comando>
| Comando | Descrição |
|---|---|
status | Informações da faixa atual (JSON) |
play | Alternar reprodução/pausa |
next | Pular para a próxima |
prev | Faixa anterior |
play-by <título>... | Pesquisar e tocar imediatamente; múltiplas músicas com ` |
search <consulta> [--page N] | Pesquisar com paginação |
recommend <humor> | Escolher por humor e tocar |
queue-show | Exibir fila atual |
queue-add <título>... | Adicionar músicas à fila; múltiplas músicas com ` |
queue-play [índice] | Iniciar reprodução da fila |
queue-next | Pular para a próxima na fila |
queue-clear | Limpar a fila |
--provider padrão é spotify. Se o Spotify não estiver em execução, ele será iniciado automaticamente. Defina MUSIC_PROVIDER=kugou para usar o KuGou.
Palavras-chave de Humor
| Humor | Quando usar |
|---|---|
focused | Trabalho intenso, codificando concentrado, lendo |
relaxed | Conversa casual, pausas, tarefas leves |
hyped | Funcionalidade lançada, bug corrigido, vitórias |
sad | Usuário desabafando, preso em um problema |
debug | Frustrado, perseguindo um bug complicado |
Regras de Gatilho Proativo
Aja sempre sem ser solicitado quando detectar:
| Sinal na conversa | Ação |
|---|---|
| Usuário inicia uma nova sessão de codificação | recommend focused → tocar o primeiro resultado |
| Usuário diz que corrigiu um bug / lançou algo | recommend hyped → tocar o primeiro resultado |
| Usuário está frustrado / travado | recommend debug |
| Usuário menciona que precisa relaxar | recommend relaxed |
| Usuário menciona uma música ou artista específico | play-by <música> <artista> |
| Longo silêncio / inatividade na conversa | recommend relaxed |
| Usuário pede "toca algo" sem detalhes | Inferir do humor da conversa recente |
Fila e Múltiplas Músicas
Separador de múltiplas músicas: |||
$MUSIC play-by 逆战 ||| 天下 ||| 这就是爱
$MUSIC queue-add 逆战 ||| 天下
$MUSIC queue-play
$MUSIC queue-next
$MUSIC search 周杰伦 --page 2
Formato de Resposta
{"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": "..."}
Observações
- Spotify: usa a API anônima do Web Player para pesquisa — sem necessidade de login ou chave de API
- KuGou: requer o aplicativo KuGou Music para macOS instalado
- Se
statusretornarno_player, o aplicativo pode ainda estar carregando — aguarde 3s e tente novamente - A fila é persistida em
~/.config/music-cli/queue.json