Spotify Player
Terminal Spotify playback/search via spogo (preferred) or spotify_player. Control playback, search tracks, manage devices.
Tags: spotify, music, playback, streaming
Category: Media
Use Cases
- AI-controlled music: 'Play some jazz' or 'Skip this song' via chat
- Morning routine automation: start a playlist when your day begins
- Search and queue tracks without leaving the terminal
- Device management: switch playback between speakers, phone, and desktop
- Playlist management: create, add to, or modify playlists from scripts
- Currently playing: show what's playing as part of a status dashboard
Tips
- Use spogo for scripting and automation — it's designed for JSON/plain output pipelines
- Use spotify_player for interactive listening sessions where you want a full TUI
- Set a default device with spogo to avoid 'no active device' errors
- Combine with OpenClaw cron for automated playlists: morning energetic, evening chill
- Use `spogo search track 'query' --json --max 1` for quick track lookups in automations
- For spogo auth: run `spogo auth` and follow the browser flow to store cookies
- Pair with the blucli or sonoscli skills to control which speaker plays the music
Known Issues & Gotchas
- Spotify Premium required for playback control — free accounts can only search
- spogo authenticates via browser cookies, not OAuth — re-auth needed if cookies expire
- spotify_player requires creating a Spotify Developer Application for OAuth credentials
- spotify_player TUI needs a real terminal — won't work in non-interactive exec contexts
- Active playback device required — if no device is active, playback commands fail silently
- Some Spotify API rate limits still apply even with cookie-based auth (spogo)
- spotify_player's librespot streaming may conflict with official Spotify client on the same account
Alternatives
- spotify-tui (spt)
- BluCLI (Bluesound)
- SonosCLI
- cmus / ncmpcpp
Community Feedback
A terminal music player, which I built to use it as a daily replacement for the official Spotify client. spotify_player is fast, configurable, and has feature parity with the desktop app.
— Reddit r/rust
Switching from spotify-tui to spotify_player. I stumbled across spotify_player, a viable alternative for listening to Spotify within the terminal with much better maintenance.
— Sudo Science Blog
Spotify, but make it terminal. Power CLI using web cookies. Search, control playback, manage library/playlists, and script with JSON/plain output.
— GitHub (spogo)
The skill is an instruction-only wrapper that tells the agent to use local CLI tools (spogo or spotify_player) for Spotify playback — no network access or API keys stored in the skill itself.
— Agent Skills Registry
Configuration Examples
spogo setup and basic use
# Install
brew install steipete/tap/spogo
# Authenticate (opens browser)
spogo auth
# Search and play
spogo search track "bohemian rhapsody" --max 3
spogo play --uri spotify:track:xxx
# Current status
spogo status --json | jq '{track: .item.name, artist: .item.artists[0].name}'spotify_player setup
# Install
brew install spotify_player
# Configure OAuth credentials
mkdir -p ~/.config/spotify-player
cat > ~/.config/spotify-player/app.toml << 'EOF'
client_id = "your-spotify-app-client-id"
EOF
# Launch TUI
spotify_playerPlayback control via spogo
# Play/pause/skip
spogo play
spogo pause
spogo next
spogo previous
# Volume
spogo volume 50
# Devices
spogo devices --json
spogo transfer --device "Living Room"Installation
brew install steipete/tap/spogoHomepage: https://www.spotify.com
Source: bundled