SKILL.md
readonly只读
name
sonoscli
description
控制 Sonos 音箱(发现/状态/播放/音量/分组)。
Sonos CLI
使用 sonos 控制本地网络上的 Sonos 音箱。
快速开始
sonos discoversonos status --name "Kitchen"sonos play|pause|stop --name "Kitchen"sonos volume set 15 --name "Kitchen"
常见任务
- 分组:
sonos group status|join|unjoin|party|solo - 收藏:
sonos favorites list|open - 队列:
sonos queue list|play|clear - Spotify 搜索(通过 SMAPI):
sonos smapi search --service "Spotify" --category tracks "query"
注意事项
- 如果 SSDP 失败,请指定
--ip <speaker-ip>。 - Spotify Web API 搜索是可选的,需要
SPOTIFY_CLIENT_ID/SECRET。 - 如果出现错误,请查看故障排除部分,并在有匹配项时提供建议。
故障排除
sonos discover - no route to host
- 错误信息:
Error: write udp4 0.0.0.0:64326->239.255.255.250:1900: sendto: no route to host (Command exited with code 1)- 注意
0.0.0.0:后面的端口号是临时的,会变化,子网掩码也可能不完全匹配 sendto: no route to host应该保持不变
- 注意
- 建议用户在 Mac OS 的
direct(无 Docker 沙箱)模式下,需要在“设置 -> 隐私与安全性 -> 本地网络”中为网关的顶层宿主父进程启用权限- 如果通过
launchd运行,则为node - 如果直接在终端中运行网关,则为
Terminal - 如果在 VS Code 中通过终端运行,则为
Visual Studio Code
- 如果通过
- 另一种选择是使用
sandbox(Docker 容器),并允许该沙箱的网络访问
sonos discover - bind: operation not permitted
- 错误信息:
Error: listen udp4 0.0.0.0:0: bind: operation not permitted - 建议用户可能正在通过 Codex 或其他不允许网络访问的沙箱运行(可以通过在启用沙箱且未批准升级请求的 Codex CLI 会话中运行
sonos discover来复现)






