Making your Slack status update itself
Three approaches, and what each one costs youSlack won't set your status from your music on its own. If you want it to happen automatically there are three ways to do it, and they trade off differently. TuneStatus is the third one — but the first two are real options and it's worth knowing why you'd pick them.
1. A hosted Slack app connected to your Spotify account
You authorise a service to read your Spotify account, and it polls Spotify's API and writes your Slack status from its own servers.
The good part: it isn't tied to one computer. Because it asks Spotify's servers rather than an app on your desk, it keeps working when you're playing from your phone, or when your laptop is shut.
The cost: you're granting a third party ongoing read access to your Spotify account, and everything you listen to passes through their infrastructure. It also only works for services with a public API worth polling, which in practice means Spotify.
2. A script on your own Mac
There are a lot of small shell and Python scripts around that read the current track and call Slack's API on a loop. If you like owning your tools, this is the honest DIY answer and it costs nothing.
The cost: you maintain it. It stops when you close the terminal or reboot unless you write a launch agent, it has no idea whether you set your status by hand, and a lot of the older ones simply don't run any more — they were built on Slack's legacy tokens, which have since been deprecated. Expect to debug someone else's four-year-old gist.
3. A local menu-bar app
This is TuneStatus. It asks the music app already running on your Mac what's playing and writes your Slack status directly. No Spotify login, no account access, no server of ours in the path — the only things it talks to are the music app beside it and slack.com.
The cost, plainly: macOS 13+ only, and it needs the desktop app running rather than the web player. It reads the Mac it's running on, so unlike approach 1 it isn't a whole-account view of your listening. If your phone is your main way of listening, approach 1 genuinely suits you better.
What you get for it: nothing to authorise beyond Slack itself, it starts at login and stays out of the way, the status clears itself when your displays sleep, your own status always wins, there's a pause switch and an optional work-hours schedule, and podcasts are never shared. The full mechanics are here.
What none of this covers
Statuses driven by your calendar — "In a meeting" while an event is running — are a different job and a different tool. TuneStatus deliberately does one thing, and it gets out of the way the moment you set a status yourself.