Quickstart
Five minutes from brew install to controlling Spotify from the terminal.
#1. Install
brew install steipete/tap/spogo
Other options live in Install.
#2. Import your browser cookies
spogo authenticates by reading the cookies your browser already has for open.spotify.com. Make sure you're logged in there in Chrome (or Brave, Edge, Firefox, Safari), then:
spogo auth import --browser chrome
Defaults: Chrome, the Default profile. To pick a non-default profile:
spogo auth import --browser chrome --browser-profile "Profile 1"
If something goes wrong (locked keychain, weird WSL setup), see Auth for auth paste and other fallbacks.
Verify:
spogo auth status
#3. Find something to play
spogo search track "weezer say it ain't so" --limit 3
Add --json if you want structured output, or --plain for tab-separated lines.
#4. Play it
spogo play spotify:track:7hQJA50XrCWABAu5v6QZ4i
You can also pass an https://open.spotify.com/... URL, or a playlist/album/show URI. spogo figures out the type from the URI; for raw IDs use --type.
#5. Drive the rest
spogo status # what's playing
spogo pause
spogo next
spogo volume 60
spogo shuffle on
spogo queue add spotify:track:6rqhFgbbKwnb9MLmUQDhG6
spogo device list # available speakers/players
spogo device set "Kitchen" # switch playback there
#6. Pipe it into something
# What track is playing right now, machine-readable?
spogo status --json | jq -r '.item.name'
# Save the top-5 search results into a playlist
spogo search track "lo-fi" --limit 5 --plain |
awk '{print $1}' |
xargs spogo playlist add "Lo-Fi Coding"
#Where to next
- Auth — cookie details, manual paste, troubleshooting.
- Engines — when to choose
connect,web,auto, orapplescript. - Output — the JSON / plain contract.
- Agents — end-to-end automation patterns.
- Command Reference — every subcommand and flag.