What's coming.
In the order it is planned. All of it is included in the one payment: $9 during the launch, $29 after it. No dates: things ship when they work.
Shipped
7In the app today.
-
Quit any app from the dropdown.
1.2.1Hover over an app, click the close button, confirm. Force quit if it doesn’t respond. Containers get a Stop button the same way.
-
Fan control.
1.2.1Each fan on automatic or at a speed you choose. Back to automatic when Vitals quits.
-
Docker containers.
1.2Every container with its memory, CPU, network and ports, inside the project it belongs to.
-
Browser tabs and extensions.
1.2Chrome, Safari, Firefox and the rest split into tabs, extensions, graphics and the browser itself.
-
Global keyboard shortcuts, and Shortcuts app actions.
1.2Open the dropdown or the window from any app. Get a reading or the busiest app in your own shortcuts.
-
A compact menu bar.
1.2For 13‑inch screens. Settings → Layout → Menu Bar → Size.
-
A customizable menu bar.
1.1Every readout can be its own item, in any order, with its own style.
Next
5Coming, in this order.
- 1
Vitals in your language.
German, French, Spanish, Italian, Swedish, Japanese, Chinese and more, ten languages at the start, in the words your Mac already uses.
- 2
An MCP server, so your AI assistant can ask Vitals first.
Claude, Codex, Cursor and any assistant that speaks MCP can ask what is running, which app is behind a number, and whether something is safe to quit, before they touch anything. A command-line tool gives scripts and Terminal agents the same answers. Off until you turn it on. Vitals itself sends nothing anywhere.
- 3
An Agents tab for Claude Code, Codex and the rest.
What your AI agents cost your Mac: each session, the project it works in, how long it has run, and everything it started, from the dev server to the tests. Stop a session and all of it in one click.
- 4
A storage map: what takes your disk space.
Every folder sized, biggest first, with a plain label: macOS, an app’s data, or yours. Caches, old Xcode files and forgotten node_modules are named for what they are and what happens if they go.
- 5
Safe cleanup of caches and old build files.
Caches, Xcode leftovers, Docker images and old node_modules, one at a time, each with a line on what it is and a confirmation. No “clean everything” button. Nothing that belongs to macOS is ever touched.
Later
12After Next. No order yet.
-
90 days of history, or a year.
Today Vitals keeps 30 days. Pick 90 days, 6 months or a year in Settings, so “what was heavy in July” has an answer, for you and for your AI assistant.
-
Alerts per app.
“Tell me when Chrome passes 8 GB for five minutes.” Or mute an app that always runs hot.
-
Push notifications to your phone.
Every alert sent to a webhook, so it works with ntfy, Pushover, Slack or Home Assistant. For a Mac that runs on its own. Quiet hours included.
-
An internet speed test.
Download, upload and latency on the Network tab, kept per Wi‑Fi network, so you can tell your Wi‑Fi from the website.
-
Export 30 days as CSV.
System numbers by the hour and app usage by the day, ready for Numbers or Excel, for sharing a problem with a colleague.
-
A Prometheus exporter.
For Grafana and homelab dashboards. Off by default, and this Mac only unless you say otherwise.
-
Install with Homebrew.
brew install, the way developers install their menu bar tools. Same app, same license key.
-
A shortcut that quits the heaviest app.
Press it anywhere, see the app and its number, press Return. Never macOS, Finder, or an app with unsaved work.
-
Lock the keyboard to clean it.
Every key is held back until you press Esc five times, or five minutes pass.
-
A calendar and clock in the menu bar.
The last thing keeping some people on iStat Menus.
-
A notch display.
A panel that opens from the notch on MacBooks that have one. Off by default.
-
Lower CPU and memory use.
Vitals already uses less than half the CPU it did at launch. There is more to save.
Not planned
3Asked for, looked into, not coming. Here so nobody waits.
-
A battery charge limiter.
macOS has one in System Settings → Battery since 26.4. A limiter that gets it wrong leaves a laptop uncharged before a flight, and that is not a risk a monitor should take. Vitals will show the limit macOS has set instead.
-
Memory per browser tab.
Chrome doesn’t tell macOS which tab a process belongs to, and one process can hold several tabs. Vitals splits a browser into tabs, extensions, graphics and the browser itself, which answers “is it my tabs or my extensions?”.
-
A “Free up RAM” button.
On a Mac it empties a cache that refills within minutes, and everything is slower until it does. macOS gives that memory back the moment an app needs it. Vitals shows what holds memory and lets you quit it, which is what the button was for.
Missing something? Write to [email protected]. Most of this board started as an email. What shipped is described in full in the changelog.