[APP][Pro] Mac Monitor - Monitor and control your Macs from Homey!

Hi everyone :waving_hand:

I made a Homey app for Macs, so you can keep an eye on your Mac mini, MacBook or Mac Studio from Homey and use it in your Flows. Version 1.0.0 is waiting for certification, the test version is available below.

:gear: What does it do?

Everything runs 100% locally. A small agent on the Mac reads the sensors and Homey talks to it over your own network.

Sensors

  • CPU and GPU temperature
  • CPU usage and load per core
  • Memory usage
  • Free disk space and disk usage
  • Fan speed (RPM)
  • Power draw (W)
  • Uptime and pending macOS updates
  • Thermal throttling alarm

Fan control is not supported on purpose, the app only reads the sensors.

Flow cards

  • When: CPU usage, memory, free disk space or fan speed crosses a value, a macOS update is available, the Mac restarted, went offline or came back
  • And: Mac is reachable, temperature / CPU / memory / disk / fan / power is above a value, an update is available
  • Then: sleep, wake (Wake-on-LAN), display off, lock, show a notification, run your own command, check for updates, restart, shut down

Restart and shut down are off by default. You need to allow them in the device settings and on the Mac.

Dashboard widget
One widget with a card for every Mac.

:hammer: How to setup for testing?

You need a Mac with Apple silicon (M1 or newer), macOS 14 or later and Node.js 18+ (brew install node or nodejs.org).

  1. Install the agent on your Mac. Open Terminal and run:
    curl -fsSL https://raw.githubusercontent.com/kircuvaloglu/homey-mac-monitor/main/agent/get.sh | sudo bash
    At the end it shows an access token, copy it.
  2. Install the test version of Mac Monitor on your Homey (link below).
  3. Go to Add device → Mac Monitor → Mac, pick your Mac from the list and paste the token.

For Wake-on-LAN, turn on “Wake for network access” in System Settings → Energy on the Mac.

:link: Links

:bug: Feedback & Bugs

Please test it and let me know how it works for you. If something doesn’t work, post it here or open an issue on GitHub. It helps a lot if you mention your Mac model and macOS version.

Version 1.5.0 is available in the test channel :tada:

New readings:

  • Idle time, screen lock and display on/off
  • Download and upload speed
  • Memory pressure and thermal state
  • Disk health (SMART)
  • Last Time Machine backup and external drives

New Flow cards:

  • When: the Mac has been idle for X minutes, someone starts using it again, screen locked/unlocked, display on/off, network speed above X, memory pressure or thermal state changes, disk health problem, backup finished or overdue, drive connected/disconnected
  • And: idle for X minutes, screen locked, display on, an app is running, a drive is connected, memory pressure is normal/warning/critical, last backup older than X hours
  • Then: keep the Mac awake for X minutes, allow sleep again, speak text

The CPU usage trigger now also tells you the busiest process.

Please update the agent on your Macs with the same install command, your token stays the same:
curl -fsSL https://raw.githubusercontent.com/kircuvaloglu/homey-mac-monitor/main/agent/get.sh | sudo bash

Full changelog: homey-mac-monitor/CHANGELOG.md at main · kircuvaloglu/homey-mac-monitor · GitHub