📦 Home Music (Enhanced) — 家庭音乐(增强版)
v1.1.0控制整屋音乐场景,结合Spotify播放与Airfoil扬声器路由。提供快速预设,适用于早晨、派对、放松等模式。
运行时依赖
安装命令
点击复制技能文档
♪ ♫ ♪ ♫ ♪ ♫ ♪ ♫ ♪ ♫ ♪ ♫ ♪ ♫ ♪ ♫ ♪ ♫ ♪ ♫ 🏠 H O M E M U S I C 🎵 ╔══════════════════════════════════════════╗ ║ 整屋音乐场景 ║ ║ 一条命令。所有扬声器。完美。 ║ ╚══════════════════════════════════════════╝ ♪ ♫ ♪ ♫ ♪ ♫ ♪ ♫ ♪ ♫ ♪ ♫ ♪ ♫ ♪ ♫ ♪ ♫ ♪ ♫ "为什么点击17次,当一条命令就能完成任务?" – Owen 🐸 🎯 这个技能做什么? Home Music 将 Spotify + Airfoil 结合成神奇的音乐场景。一条命令 – 正确的播放列表在正确的扬声器上以完美的音量播放。想象: 您醒来 → home-music morning → 浴室中播放温柔的曲子 朋友到来 → home-music party → 所有扬声器播放摇滚乐 放松时间 → home-music chill → 到处都是休闲氛围 完成一天 → home-music off → 沉默。宁静。祥和。 📋 依赖项 什么 为什么 链接 🍏 macOS 这个技能使用 AppleScript — 🟢 Spotify Desktop App 音乐来源!必须运行。spotify.com 📡 Airfoil 将音频路由到 AirPlay 扬声器 rogueamoeba.com 🎵 spotify-applescript Clawdbot 的 Spotify 控制技能 skills/spotify-applescript/ ⚠️ 重要:Spotify 和 Airfoil 必须在开始任何场景之前运行! 🎬 场景 🌅 Morning 温柔的开始您的新的一天 home-music morning 扬声器:Sonos Move 音量:40% 播放列表:Morning Playlist 气氛:☕ 咖啡 + 良好的氛围 🎉 Party 时刻庆祝! home-music party 扬声器:ALL (Computer, MacBook, Sonos Move, Living Room TV) 音量:70% 播放列表:Rock Party Mix 气氛:🤘 邻居讨厌这个技巧 😌 Chill 纯粹的放松 home-music chill 扬声器:Sonos Move 音量:30% 播放列表:Chill Lounge 气氛:🧘 Om... 🔇 Off 沉默 home-music off 暂停 Spotify 断开所有扬声器的连接 气氛:🤫 终于,宁静与安静 📊 状态 当前播放什么? home-music status 显示:当前 Spotify 曲目 已连接的扬声器 🔧 安装 # 使脚本可执行 chmod +x ~/clawd/skills/home-music/home-music.sh # 为全局访问创建符号链接 sudo ln -sf ~/clawd/skills/home-music/home-music.sh /usr/local/bin/home-music 现在 home-music 可以从终端的任何地方工作! 🎉 🎨 自定义播放列表和场景 更改播放列表 打开 home-music.sh 并找到播放列表配置: # === PLAYLIST CONFIGURATION === PLAYLIST_MORNING="spotify:playlist:19n65kQ5NEKgkvSAla5IF6" PLAYLIST_PARTY="spotify:playlist:37i9dQZF1DXaXB8fQg7xif" PLAYLIST_CHILL="spotify:playlist:37i9dQZF1DWTwnEm1IYyoj" 如何找到播放列表 URI:在 Spotify 中右键单击播放列表 "分享" → "复制 Spotify URI" 或复制 URL 并提取 /playlist/ 部分 添加新场景 在主块中添加新案例: # 在 home-music.sh 中 scene_chill 函数之后: scene_workout() { echo "💪 开始 Workout 场景..." airfoil_set_source_spotify airfoil_connect "Sonos Move" sleep 0.5 airfoil_volume "Sonos Move" 0.8 "$SPOTIFY_CMD" play "spotify:playlist:YOUR_WORKOUT_PLAYLIST" "$SPOTIFY_CMD" volume 100 echo "✅ Workout:Sonos Move @ 80%,加油!" } # 在 case 块中: workout) scene_workout ;; 可用的扬声器 ALL_SPEAKERS=("Computer" "Andy's M5 Macbook" "Sonos Move" "Living Room TV") 您可以添加任何 AirPlay 扬声器 – 只需要在 Airfoil 中可见即可。 🐛 故障排除 ❌ "扬声器无法连接" 检查 1:Airfoil 是否运行? pgrep -x Airfoil || echo "Airfoil 未运行!" 检查 2:扬声器是否在网络上? 打开 Airfoil 应用程序 检查扬声器是否出现在列表中 手动尝试连接 检查 3:名称是否完全正确? 扬声器名称是区分大小写的! 打开 Airfoil 并复制确切的名称 ❌ "没有声音" 检查 1:Spotify 是否正在播放? ~/clawd/skills/spotify-applescript/spotify.sh status 检查 2:Airfoil 源是否正确? 打开 Airfoil 检查是否选择了 "Spotify" 作为音频源 如果没有:单击 "源" → 选择 Spotify 检查 3:扬声器音量? # 手动检查音量 osascript -e 'tell application "Airfoil" to get volume of (first speaker whose name is "Sonos Move")' ❌ "Spotify 不会启动" Spotify 是否打开? pgrep -x Spotify || open -a Spotify spotify-applescript 是否安装? ls ~/clawd/skills/spotify-applescript/spotify.sh ❌ "权限被拒绝" chmod +x ~/clawd/skills/home-music/home-music.sh 🔊 直接 Airfoil 命令 如果您想手动控制 Airfoil: # 连接扬声器 osascript -e 'tell application "Airfoil" to connect to (first speaker whose name is "Sonos Move")' # 设置扬声器音量 (0.0 - 1.0) osascript -e 'tell application "Airfoil" to set (volume of (first speaker whose name is "Sonos Move")) to 0.5' # 断开扬声器 osascript -e 'tell application "Airfoil" to disconnect from (first speaker whose name is "Sonos Move")' # 列出已连接的扬声器 osascript -e 'tell application "Airfoil" to get name of every speaker whose connected is true' # 设置音频源 osascript -e 'tell application "Airfoil" set theSource to (first application source whose name contains "Spotify") set