01
Start listening.
Install the native app with Homebrew, then open it in a terminal.
brew install anthonymaley/musictui/musictui
musicUse a real terminal for the interactive interface. You can run individual music commands from a shell or script.
Already listening? Keep your Mac’s media keys for play, pause, and skipping tracks.
02
What it does.
- Playback
- Choose an album or playlist, control the queue, and see what’s playing.
- Library & playlists
- Browse artists, albums, and songs. Filter your library and organize the tracks you already own.
- AirPlay
- Choose speakers, adjust each room’s volume, and verify active routes. If a route fails, MusicTUI names the next step.
- Radio
- Keep local station favorites and play an Apple Music station from its share URL.
- Discovery
- Explore personalized recommendations and recent listening with the appropriate account setup.
- EQ & visuals
- Select a venue preset or switch on Music’s visualizer. Live EQ and visualizer controls require Accessibility permission.
Album artwork renders as pixels in supported terminals, including Kitty, WezTerm, Ghostty, and iTerm2 3.5+. Optional chafa provides a fallback elsewhere.
03
Find your rhythm.
The basics travel with you. Individual tabs add controls for their own tasks.
| Keys | Action |
|---|---|
| 1–6 | Jump between tabs |
| Tab / Shift + Tab | Next / previous tab |
| ↑ ↓ ← → | Move around the interface |
| j k h l | Vim-style navigation; some Now controls use their own bindings |
| Space | Play / pause |
| < / > | Previous / next track |
| + / − | Master volume up / down |
| / | Search or filter in supported list views |
| [ / ] | Seek 30 seconds in Now; switch subviews in Library or Radio |
| q / Ctrl + C | Quit |
For an album or track to stop at its end, turn off Autoplay (∞) in Music’s Up Next panel.
04
At your command.
A few useful starting points. Replace track, playlist, and speaker names with your own.
music now- See the current track and output.
music play --album "Kid A" --artist "Radiohead"- Play a specific album from your library.
music search "Radiohead" --library- Search your existing library without a developer token.
music speaker kitchen 40- Add a speaker and set its volume. Use a name from your own speaker list.
music speaker verify- Check the selected AirPlay routes while music is playing.
music radio list- List your favorite stations.
music eq "Late Night"- Apply a venue preset; requires Accessibility permission.
music search "deep house"- Search the catalog through MusicKit after developer-token setup.
Make it scriptable.
Add --json when you want structured output.
music now --json05
Or just ask Claude.
Install the optional Claude Code plugin to turn a listening request into a sequence of commands. Install the CLI first, then run these inside Claude Code.
/plugin marketplace add anthonymaley/musictui
/plugin install music@musictuiUse /music as the entry point, followed by what you want to do.
“Play my Working Vibes playlist in the kitchen at 40%, then shuffle.”
The plugin uses the same CLI. Requests involving catalog or personal API features still need the relevant setup below.
06
A little setup.
Start with what’s already on your Mac. Add account setup when a feature needs it.
- Your Mac
- macOS 14+ with the Music app. Apple Silicon on macOS 26 can use a prebuilt Homebrew binary; other Macs need Swift 5.9+ to build it.
- Local listening
- Playback, AirPlay, your existing library, library search, and local playlist operations do not need an Apple Developer account.
- Automation
- Allow your terminal to control Music when macOS asks. You can review this in System Settings → Privacy & Security → Automation.
- EQ & visualizer
- Give your terminal Accessibility permission to control Music’s live equalizer and on-screen visualizer.
Optional MusicKit setup.
For the Music.app/MusicKit API path, catalog search needs a developer token. Personalized discovery and other account API operations also need an Apple Music user token. Creating the MusicKit key requires a paid Apple Developer membership .
music auth setup
music auth
music auth statusThe setup command walks you through the key. The sign-in command opens a browser; the final command checks your status.
Using SpanDAC as a data source or output? Its capabilities and authentication requirements differ. See the SpanDAC reference .
Keep the full reference nearby.
For every command, platform notes, and updates, use the project documentation .