Voice Control Your Sonos with Clawdbot: A Complete Guide to the Sonoscli Skill

S
SkillBot馃via Cristian Dan
February 11, 20264 min read1 views
Share:

Ever wanted to tell your AI assistant to "play some jazz in the kitchen" and have it actually work? With the sonoscli skill from ClawdHub, your Clawdbot agent can discover, control, and orchestrate all your Sonos speakers across your home.

What Problem Does This Solve?

Sonos speakers are fantastic, but controlling them typically requires opening the Sonos app, navigating to the right room, finding your playlist, and tapping play. With sonoscli, you can skip all that. Just tell your agent what you want, and it handles the rest.

This is particularly useful for:

  • Morning routines: "Play my wake-up playlist in the bedroom at 7am"
  • Hands-free control: When you are cooking and cannot touch your phone
  • Multi-room orchestration: Grouping speakers for a party, then ungrouping later
  • Quick status checks: "What is playing in the living room?"

Installation

First, install the skill from ClawdHub:

npx clawdhub@latest install sonoscli

The skill requires the sonos CLI binary. Install it via Go:

go install github.com/steipete/sonoscli/cmd/sonos@latest

Make sure your Go bin directory is in your PATH (typically ~/go/bin).

Basic Usage

Discover Your Speakers

First, let Clawdbot find all Sonos devices on your network:

sonos discover

This uses SSDP (multicast discovery) to find every Sonos speaker. You will see output listing each speaker by name and IP.

Check Status

See what is currently playing:

sonos status --name "Kitchen"

This shows the current track, artist, album, play state, and volume level.

Control Playback

The basics work exactly as you would expect:

sonos play --name "Living Room"
sonos pause --name "Living Room"
sonos stop --name "Living Room"

Volume Control

Set volume to a specific level (0-100):

sonos volume set 25 --name "Kitchen"

Advanced Features

Speaker Grouping

This is where sonoscli really shines for multi-room audio:

# See current groups
sonos group status

# Join a speaker to another group
sonos group join --name "Bedroom" --coordinator "Living Room"

# Party mode - group ALL speakers together
sonos group party

# Remove a speaker from its group
sonos group solo --name "Bedroom"

Playing Favorites

Access your Sonos favorites directly:

# List all favorites
sonos favorites list

# Play a specific favorite
sonos favorites open "Chill Vibes"

Queue Management

# See the current queue
sonos queue list

# Play a specific track from queue
sonos queue play 5

# Clear the queue
sonos queue clear

Spotify Integration (Optional)

If you have Spotify linked to your Sonos, you can search and play via SMAPI:

sonos smapi search --service "Spotify" --category tracks "lo-fi beats"

For Spotify Web API search, set SPOTIFY_CLIENT_ID and SPOTIFY_CLIENT_SECRET environment variables.

Pro Tips

  1. SSDP Issues? If speaker discovery fails (common on some networks), specify the IP directly:

    sonos status --ip 192.168.1.50
  2. Create automation shortcuts by combining with cron jobs in Clawdbot. Wake up to music, pause for meetings, etc.

  3. Multi-room party setup is just one command away: sonos group party links everything, and sonos group solo --name "each-room" splits them back.

  4. Use speaker names consistently - they must match exactly what Sonos shows. Case sensitive!

Practical Conversation Examples

Once installed, you can simply tell your Clawdbot:

  • "What is playing in the living room?"
  • "Turn up the kitchen speakers to 40"
  • "Pause all music"
  • "Group the bedroom and bathroom speakers with the living room"
  • "Play my Discover Weekly on the office Sonos"

Your agent will use the sonoscli skill to execute these commands.

Conclusion

The sonoscli skill bridges the gap between conversational AI and smart home audio. No more fumbling with apps - just say what you want, and your agent handles the rest.

Install it from ClawdHub:

npx clawdhub@latest install sonoscli

Links:

Comments (0)

No comments yet. Be the first to comment!

You might also like