← 返回
未分类 中文

Home Music Enhanced

Control whole-house music scenes combining Spotify playback with Airfoil speaker routing. Quick presets for morning, party, chill modes.
控制全屋音乐场景,融合Spotify播放与Airfoil扬声器路由,快速预设早晨、派对、休闲模式。
terrycarter1985
未分类 clawhub v2.0.0 2 版本 100000 Key: 无需
★ 0
Stars
📥 356
下载
💾 0
安装
2
版本
#latest

概述

    ♪ ♫ ♪ ♫ ♪ ♫ ♪ ♫ ♪ ♫ ♪ ♫ ♪ ♫ ♪ ♫ ♪ ♫ ♪ ♫
    
    🏠  H O M E   M U S I C  🎵
    
    ╔══════════════════════════════════════════╗
    ║   Whole-House Music Scenes               ║
    ║   One command. All speakers. Perfect.    ║
    ╚══════════════════════════════════════════╝
    
    ♪ ♫ ♪ ♫ ♪ ♫ ♪ ♫ ♪ ♫ ♪ ♫ ♪ ♫ ♪ ♫ ♪ ♫ ♪ ♫

> "Why click 17 times when one command does the job?" – Owen 🐸


🎯 What Does This Skill Do?

Home Music combines Spotify + Airfoil into magical music scenes. One command – and the right playlist plays on the right speakers at the perfect volume.

Imagine:

  • You wake up → home-music morning → Gentle tunes in the bathroom
  • Friends arrive → home-music party → All speakers blasting rock
  • Time to relax → home-music chill → Lounge vibes everywhere
  • Done for the day → home-music off → Silence. Peace. Serenity.

📋 Dependencies

WhatWhyLink
-----------------
🍏 macOSThis skill uses AppleScript
🟢 Spotify Desktop AppThe music source! Must be running.spotify.com
📡 AirfoilRoutes audio to AirPlay speakersrogueamoeba.com
🎵 spotify-applescriptClawdbot skill for Spotify controlskills/spotify-applescript/

> ⚠️ Important: Both Spotify and Airfoil must be running before you start any scenes!


🎬 Scenes

🌅 Morning

A gentle start to your day

home-music morning
  • Speaker: Sonos Move
  • Volume: 40%
  • Playlist: Morning Playlist
  • Vibe: ☕ Coffee + good vibes

🎉 Party

Time to celebrate!

home-music party
  • Speaker: ALL (Computer, MacBook, Sonos Move, Living Room TV)
  • Volume: 70%
  • Playlist: Rock Party Mix
  • Vibe: 🤘 Neighbors hate this one trick

😌 Chill

Pure relaxation

home-music chill
  • Speaker: Sonos Move
  • Volume: 30%
  • Playlist: Chill Lounge
  • Vibe: 🧘 Om...

🎧 Focus

Deep work / concentration

home-music focus
  • Speaker: Computer
  • Volume: 35%
  • Playlist: Lo-Fi Beats
  • Vibe: 💻 In the zone, no vocals

🍷 Dinner

Cooking & dining ambiance

home-music dinner
  • Speakers: Sonos Move + Living Room TV
  • Volume: 35% / 25%
  • Playlist: Jazz Vibes
  • Vibe: 🍳 Sizzle & chat

🌙 Sleep

Bedtime wind-down

home-music sleep
  • Speaker: Sonos Move
  • Volume: 15%
  • Playlist: Sleep Ambient
  • Vibe: 😴 Drift off gently

🔇 Off

Silence

home-music off
  • Pauses Spotify
  • Disconnects all speakers
  • Vibe: 🤫 Finally, peace and quiet

📊 Status

What's playing right now?

home-music status

Shows:

  • Current Spotify track
  • Connected speakers

🔧 Installation

# Make the script executable
chmod +x ~/clawd/skills/home-music/home-music.sh

# Symlink for global access
sudo ln -sf ~/clawd/skills/home-music/home-music.sh /usr/local/bin/home-music

Now home-music works from anywhere in your terminal! 🎉


🎨 Custom Playlists & Scenes

Changing Playlists

Open home-music.sh and find the playlist configuration:

# === PLAYLIST CONFIGURATION ===
PLAYLIST_MORNING="spotify:playlist:19n65kQ5NEKgkvSAla5IF6"
PLAYLIST_PARTY="spotify:playlist:37i9dQZF1DXaXB8fQg7xif"
PLAYLIST_CHILL="spotify:playlist:37i9dQZF1DWTwnEm1IYyoj"

How to find Playlist URIs:

  1. Right-click on a playlist in Spotify
  2. "Share" → "Copy Spotify URI"
  3. Or copy the URL and extract the /playlist/ part

Adding a New Scene

Add a new case in the main block:

# In home-music.sh after the "scene_chill" function:

scene_workout() {
    echo "💪 Starting Workout scene..."
    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%, Pump it up!"
}

# And in the case block:
    workout)
        scene_workout
        ;;

Available Speakers

ALL_SPEAKERS=("Computer" "Andy's M5 Macbook" "Sonos Move" "Living Room TV")

You can add any AirPlay speaker – they just need to be visible in Airfoil.


🐛 Troubleshooting

❌ "Speaker won't connect"

Check 1: Is Airfoil running?

pgrep -x Airfoil || echo "Airfoil is not running!"

Check 2: Is the speaker on the network?

  • Open the Airfoil app
  • Check if the speaker appears in the list
  • Try connecting manually

Check 3: Is the name exactly correct?

  • Speaker names are case-sensitive!
  • Open Airfoil and copy the exact name

❌ "No sound"

Check 1: Is Spotify playing?

~/clawd/skills/spotify-applescript/spotify.sh status

Check 2: Is the Airfoil source correct?

  • Open Airfoil
  • Check if "Spotify" is selected as the audio source
  • If not: Click "Source" → Select Spotify

Check 3: Speaker volume?

# Manually check volume
osascript -e 'tell application "Airfoil" to get volume of (first speaker whose name is "Sonos Move")'

❌ "Spotify won't start"

Is Spotify open?

pgrep -x Spotify || open -a Spotify

Is spotify-applescript installed?

ls ~/clawd/skills/spotify-applescript/spotify.sh

❌ "Permission denied"

chmod +x ~/clawd/skills/home-music/home-music.sh

🔊 Direct Airfoil Commands

If you want to control Airfoil manually:

# Connect a speaker
osascript -e 'tell application "Airfoil" to connect to (first speaker whose name is "Sonos Move")'

# Set speaker volume (0.0 - 1.0)
osascript -e 'tell application "Airfoil" to set (volume of (first speaker whose name is "Sonos Move")) to 0.5'

# Disconnect a speaker
osascript -e 'tell application "Airfoil" to disconnect from (first speaker whose name is "Sonos Move")'

# List connected speakers
osascript -e 'tell application "Airfoil" to get name of every speaker whose connected is true'

# Set audio source
osascript -e 'tell application "Airfoil"
    set theSource to (first application source whose name contains "Spotify")
    set current audio source to theSource
end tell'

📁 Files

skills/home-music/
├── SKILL.md        # This documentation
└── home-music.sh   # The main script

💡 Pro Tips

  1. Set aliases for even faster access:

```bash

alias mm="home-music morning"

alias mp="home-music party"

alias mc="home-music chill"

alias mo="home-music off"

```

  1. Use with Clawdbot:

> "Hey, start party mode"

> "Put on some chill music"

> "Stop the music"

  1. Combine scenes: Create a dinner scene with a jazz playlist at 25% – perfect for guests!

🐸 Credits

╭─────────────────────────────────────────────╮
│                                             │
│   Crafted with 💚 by Owen the Frog 🐸      │
│                                             │
│   "Ribbit. Music makes everything better."  │
│                                             │
╰─────────────────────────────────────────────╯

Author: Andy Steinberger (with help from his Clawdbot Owen the Frog 🐸)

Version: 1.1.0

License: MIT

Pond: The one with the water lilies 🪷


Did this skill improve your life? Owen appreciates flies. 🪰

版本历史

共 2 个版本

  • v2.0.0 当前
    2026-05-21 13:47 安全 安全
  • v1.1.0
    2026-05-08 13:41 安全 安全

安全检测

腾讯云安全 (Keen)

安全,无风险
查看报告

腾讯云安全 (Sanbu)

安全,无风险
查看报告

🔗 相关推荐

Stock Price Alert

terrycarter1985
股价异动实时提醒,支持行情接口、邮件和Sonos语音播报
★ 0 📥 677

Stock Alert Workflow

terrycarter1985
使用 Yahoo Finance 数据分析股票和加密货币,支持投资组合管理(创建、添加、移除资产),以及按市值排名前 20 的加密货币分析。
★ 0 📥 571

Code Formatter

terrycarter1985
代码格式化最佳实践及常用语言(Python、JavaScript、JSON、Markdown 等)的快速参考,使用 Prettier、Black、ESLint 等工具。
★ 0 📥 608