Internet live streams
Tune in to real-time live streams and internet radio inside the app.
Native macOS live stream & music player
Hay Radio brings internet live streams, local audio files, and music on
SFTP/SMB/WebDAV shares together in a single playlist—without juggling
separate apps. Control it from the GUI—or from the shell with
hayctl, scriptable and friendly to local AI assistants.
macOS 12+ recommended. The public installer downloads the latest DMG from GitHub Releases.
Features
The simplicity of a stream-focused app, with the depth of a desktop music player.
Tune in to real-time live streams and internet radio inside the app.
Play and organize mp3, m4a, flac, wav, and more from your Mac in playlists.
Add, remove, rename, drag to reorder, and switch repeat/shuffle modes.
Media keys, AirPlay output picker, and a UI that fits light and dark environments.
Reopen the app and pick up where you left off on local and network tracks.
The hayctl CLI talks to the running app over a local Unix
socket: list playlists and tracks, jump to a song, play/pause/stop, next
/ previous, change repeat/shuffle mode, and read playback status—ideal for
scripts, shortcuts, and voice-driven workflows.
Network drive
Connect SFTP, SMB, or WebDAV as a network-drive playlist and see every audio file under your chosen path as tracks—ready to play.
Install
Downloads the latest DMG and copies Hay Radio.app into
/Applications.
curl -fsSL https://cdn.haysoft.net/radio/install.sh | bash
Served from Hay Soft CDN. The script downloads the DMG from
cdn.haysoft.net/radio/ by default; override with
HAY_RADIO_DMG_URL at install time if needed.
Command line & automation
Install hayctl once via
Tools → Install Command-Line Tool… (bundled with the
app). While Hay Radio is open, every command reaches the same engine as the
UI, so your queue, network tracks, and play modes stay in sync.
playlists, tracks, statusplay, stop, pause, resume, togglenext, prev, select (playlist only)mode off|loop|shuffle|cycle--json for one-line responses$ hayctl --help
$ hayctl playlists
$ hayctl tracks "NAS Jazz"
$ hayctl play "NAS Jazz" 3
$ hayctl next
$ hayctl mode shuffle
$ hayctl status --json
Local AI agents
hayctl is a normal macOS command-line program. Any local AI
agent or assistant that can run shell commands on your machine—such as
OpenClaw or other desktop “coding agent” setups—can
orchestrate Hay Radio the same way you would in Terminal: discover what is
playing, switch playlists, skip tracks, or start a specific song by name
or index.
Hay Radio does not need a cloud API for this: the app exposes a small
control channel on your Mac, so automation stays on-device if your agent
does. Keep the app running and ensure hayctl is on your
PATH for the user the agent uses.
# Example prompts you might give a local agent:
# “Run hayctl status”
# “Play the third track on my Jazz playlist”
# → hayctl play "Jazz" 2
$ hayctl status
$ hayctl play "Morning streams"
$ hayctl next
FAQ
Hay Radio is a macOS Tauri app; an Intel build is possible. The default installer points at an Apple Silicon DMG filename—adjust the release asset name if you ship an Intel build.
When you opt in, credentials are stored in the macOS Keychain—not as plain text in app settings files.
It downloads the DMG to a temp folder, mounts it, copies Hay Radio.app
into /Applications, then cleans up the mount and temp files.
hayctl say it cannot connect?
The CLI talks to the running Hay Radio process. Open the app first, then
run hayctl again. If you use multiple macOS users, install
hayctl for the same account that runs the agent.