返回顶部
z

zonefoundry-local-sonosZoneFoundry Sonos控制

Use this skill when an agent needs to control Sonos through ZoneFoundry `zf` on a same-LAN node. Start with readiness checks, then map user requests to safe playback, queue, service-linking, and recovery commands.

作者: admin | 来源: ClawHub
源自
ClawHub
版本
V 1.5.9
安全检测
已通过
184
下载量
免费
免费
0
收藏
概述
安装方式
版本历史

zonefoundry-local-sonos

ZoneFoundry Local Sonos

当代理、本地机器人或自动化系统希望通过本地 zf CLI 控制 Sonos 时,使用此技能。

本技能以英文优先编写,方便全球用户快速浏览。面向用户的回复请使用用户的语言。中文示例和中国专属就绪说明已包含在有助于理解的位置。

使用此技能的场景

  • - 用户首次连接 Sonos
  • 用户想要检查本地 Sonos 控制是否就绪
  • 用户想要播放、暂停、跳过、调节音量或查看状态
  • 用户想要在不中断播放的情况下将歌曲添加到当前队列
  • 用户想要检查或恢复队列/传输问题
  • 用户想要检查音乐服务就绪状态或继续待处理的本地链接流程

请勿将此技能用于

  • - Sonos 账户创建或计费流程
  • 云中继、托管机器人订阅或多租户产品逻辑
  • 与 Sonos 控制无关的任意聊天

核心模型

将 zf 视为执行层。

机器人 / 代理 / 网页引导 -> zf -> Sonos

  • - 机器人或代理负责翻译意图并解释结果
  • zf 负责发现、播放、队列、诊断、就绪检查和恢复

替代控制方式

除了代理/CLI 使用方式外,ZoneFoundry 还支持Telegram 机器人作为替代控制界面。用户可以通过手机向机器人发送语音或文本消息,实现免提控制 Sonos。

硬性规则(必须遵守)

  1. 1. 始终遵循 nextCommand:如果 zf setup --format json 返回了 nextCommand 字段,请立即执行该命令。
  1. 2. 始终遵循 nextAction:如果 zf service list --format json 返回了 nextAction 字段,请遵循该指示。如果 nextAction=ready,则继续播放。
  1. 3. 不要因服务链接状态而阻止播放。 QQ 音乐、Apple Music 和大多数服务无需在 CLI 端单独链接——用户通过 Sonos 移动应用绑定服务。如果状态不明确,请先尝试直接播放。
  1. 4. 不要在面向用户的解释中暴露内部实现细节、仅限高级用户的路由或推测性的变通方案。 请描述用户可见的结果和下一步安全操作。
  1. 5. 保持更新路径分离

bash
clawhub update zonefoundry-local-sonos # 刷新此技能
zf update self --check --format json # 检查本地运行时更新

语言规则

  • - 面向用户的回复请使用用户的语言
  • 保持房间名称和服务名称与用户在 Sonos 上看到的完全一致
  • 默认使用英文示例,仅在有助于提高清晰度时添加中文示例

首次运行快速入门

当用户首次提到 Sonos 时,不要立即说未配置。

在每个新会话开始时,首先检查运行时更新:

bash
zf update self --check --format json

如果返回 status=update_available,在进行更深入的工作前先更新:

bash
zf update self --format json

然后运行一次性就绪流程:

bash
zf setup --format json

zf setup 应作为默认的第一步操作,因为它会检查:

  • - 音箱发现
  • 默认房间
  • 服务列表和本地就绪状态
  • 默认服务
  • 包含建议下一步操作的最终摘要

如果旧版运行时上 zf setup 不可用,请执行此备用预检:

bash
zf doctor --format json
zf discover --format json
zf config get defaultRoom
zf service list --format json
zf config get defaultService

如果找到了房间但没有默认房间,请让用户选择一个可见的房间,然后设置一次:

bash
zf config set defaultRoom Office

如果没有默认服务,请询问一次并设置:

bash
zf config set defaultService Spotify

环境门槛

在承诺持久的本地机器人控制之前,请确认存在一台与 Sonos 处于同一局域网且始终在线的设备。

有效的本地节点:

  • - Mac 或 Windows PC
  • NAS
  • 迷你 PC
  • 树莓派
  • Docker 主机
  • Home Assistant 主机

如果用户只有手机:

  • - 说明 Sonos 本身仍可正常使用
  • 引导用户通过官方 Sonos iOS/Android 应用添加/登录服务
  • 将 Sonos Web 应用视为辅助控制界面,而非主要引导路径
  • 不要承诺持久的本地机器人控制或始终在线的自动化

简要规则:

  • - Sonos 本身不需要桌面应用
  • 持久的 ZoneFoundry 代理或机器人流程确实需要一个始终在线的本地节点

最小安全命令集

默认优先使用 JSON 输出。

bash
zf setup --format json
zf doctor --format json
zf discover --format json
zf status --name --format json
zf queue list --name --format json

如果用户已指定房间,优先使用 --name

安全命令映射

对于面向用户的解释,优先使用直接的 CLI 命令名称。

示例:

bash
zf status --name Office --format json
zf pause --name Office
zf next --name Office
zf volume set 20 --name Office

播放规则

对于常规播放,优先使用统一的 play music 命令。

常见服务示例:

bash
zf play music Miles Davis --format json
zf play music Taylor Swift --service Spotify --format json
zf play music Adele --service Apple Music --format json
zf play music 黎明 夏日傾情 --service Apple Music --format json
zf play music 黎明 --enqueue --service Apple Music --limit 5 --format json
zf queue list --name Office --format json
zf queue remove 3 --name Office
zf say Dinner is ready --name Kitchen --mode queue-insert --format json

中文示例:

bash
zf play music 周杰伦 --service 网易云音乐 --format json
zf play music 郑秀文 --enqueue --service QQ音乐 --limit 5 --format json
zf play music 郑秀文 舍不得你 --service QQ音乐 --format json
zf ncm lucky --name 客厅 郑秀文 --format json
zf smapi search --name 客厅 --service QQ音乐 --category tracks --open --index 1 --format json 周杰伦

默认服务选择:

  • - 中文内容(中文艺人/歌曲名称,用户说中文):使用 --service QQ音乐。无需后备——QQ 拥有最佳的中文曲库覆盖。
  • 国际内容(英文/其他语言的艺人/歌曲名称,用户说英文):使用 --service Spotify。如果 Spotify 不可用,则回退到 --service Apple Music。
  • 如果用户明确指定了服务,始终尊重用户的选择。
  • QQ 音乐和 Apple Music 使用公共搜索 API——无需单独的 CLI 链接。直接播放即可。
  • 当用户指定歌曲时,使用精确的 艺人 + 歌曲名 措辞,例如 zf play music 黎明 夏日傾情 --service QQ音乐。

重要区别:

  • - 如果用户说播放 X,使用 zf play music X,预期为替换式操作
  • 如果用户说添加 X、排队 X、追加 X或播完这个放 X,使用 zf play music X --enqueue
  • 如果措辞模糊且已有内容正在播放,--enqueue 通常是更安全的默认选择

自然语言示例:

  • - 播放 Taylor Swift -> zf play music Taylor Swift
  • 添加五首 Adele 的歌 -> zf play music Adele --enqueue --limit 5
  • 播郑秀文 -> zf play music 郑秀文
  • 再加一首陈奕迅 -> zf play music 陈奕迅 --enqueue

歌词规则

当用户询问当前歌曲的歌词时,使用:

bash
zf lyric --name --format json

当运行时支持时,此命令会获取当前播放曲目的歌词。如需获取带时间戳的原始 LRC,请添加 --raw。

QQ 音乐歌词现已可靠工作(MID 解析问题已修复)。QQ 音乐和网易云音乐的曲目在可用时都会返回带翻译的歌词。

播报规则

如果用户要求简短的语音打断,例如:

  • - 读一分钟新闻简报
  • 通知会议五分钟后开始
  • 播一分钟新闻
  • 20 分钟后提醒我开会

默认使用简短的 TTS 或提醒路径,而非搜索电台。

当前稳定的播报路径(直接模式,默认):

bash
zf say --name --format json

TTS 语言选项:

  • - zh(普通话)—— 默认,无需指定标志
  • yue(粤语)—— 传入 --lang yue

粤语

标签

skill ai

通过对话安装

该技能支持在以下平台通过对话安装:

OpenClaw WorkBuddy QClaw Kimi Claude

方式一:安装 SkillHub 和技能

帮我安装 SkillHub 和 zonefoundry-local-sonos-1776122411 技能

方式二:设置 SkillHub 为优先技能安装源

设置 SkillHub 为我的优先技能安装源,然后帮我安装 zonefoundry-local-sonos-1776122411 技能

通过命令行安装

skillhub install zonefoundry-local-sonos-1776122411

下载

⬇ 下载 zonefoundry-local-sonos v1.5.9(免费)

文件大小: 13.69 KB | 发布时间: 2026-4-14 14:01

v1.5.9 最新 2026-4-14 14:01
Automated sync from GitHub Actions

Archiver·手机版·闲社网·闲社论坛·羊毛社区· 多链控股集团有限公司 · 苏ICP备2025199260号-1

Powered by Discuz! X5.0   © 2024-2025 闲社网·线报更新论坛·羊毛分享社区·http://xianshe.com

p2p_official_large
返回顶部