sonoscli is a command-line interface designed for discovering, grouping, and controlling Sonos speakers over a local network. Built in Go, the tool operates directly from the terminal and is intended for use in scripts, automations, and by coding agents. It addresses the need for reliable and programmable Sonos speaker management outside of the official apps, providing access to key speaker functions via composable subcommands.
The tool offers features such as reliable speaker discovery using SSDP, ZoneGroupTopology, and subnet-scan fallback methods, ensuring all speakers on the network can be found. Users can control playback in any room, including actions like play, pause, stop, next, previous, line-in, and TV. Grouping capabilities allow users to join, unjoin, dissolve groups, initiate party mode, and adjust group volume or mute settings. Queue management is supported, with options to list, play, remove, or clear queue entries. The tool can open Spotify links without requiring Spotify credentials by leveraging the Spotify service already linked in the Sonos app, and it enables searching linked services via Sonos SMAPI or directly through the Spotify Web API.
Additional capabilities include playing web audio by proxying sources such as YouTube, YouTube Music playlists, podcasts, and radio streams through a Sonos-compatible local MP3 stream. Users can save and reapply "scenes," which capture grouping and per-room volume or mute settings. Real-time event monitoring is available by subscribing to AVTransport and RenderingControl, allowing users to stream live changes. Output can be formatted as plain text, JSON, or TSV for use in scripts and dashboards, and the tool provides predictable exit codes and a debug mode for SOAP trace analysis.
sonoscli is delivered as a single binary that communicates with Sonos systems over the local network using UPnP and SOAP protocols, similar to the official Sonos app but accessible from the terminal. Installation options include Homebrew and other methods. The tool is not an official Sonos project.
sonoscli sits in PulseGate's CLI tools & terminal category. It focuses on controlling and automating Sonos speakers from the terminal for scripting and automation. sonoscli is an open-source project aimed at developers and power users with Sonos systems. The project is open source (MIT). The product ships for the command line.
It is developed by steipete, and the product first shipped in 2025. The project is developed in the open on GitHub with 164 stars and 33 commits in the last 90 days. Across PulseGate's embedding index, sonoscli has few near neighbours, marking it as relatively distinct. Among its 6 catalogued features are speaker discovery, playback control, and grouping speakers.
Latest indexed changes and source events
sonoscli.sh discovered by the PulseGate indexer
Other apps tracked under the same category.