Always-on automation host
A dedicated Mac mini runs the whole scheduled stack, because a laptop that sleeps misses runs you can never recapture.
I first ran the scheduled jobs on my laptop. It slept, and it missed runs. A point-in-time forecast snapshot you miss can't be rebuilt once the date rolls, so I lost data I could never get back. The fix was a host that never sleeps.
How it works
A dedicated, always-on Mac mini runs the portfolio's jobs through macOS launchd: the nightly rate scrape, the payroll punch report, the housekeeping evening refresh, the morning flash, and live staffing pulls every thirty minutes. Secrets and MFA are handled unattended, and I reach it privately from anywhere over Tailscale SSH.
- 1Password token in the login Keychain, TOTP for logins, auto-login at boot, and an SSH key in the Keychain for git pushes.
- healthchecks.io heartbeats catch silent failures, and a job that fails pings my phone.
- A gotcha I learned in production: rescheduling a calendar-interval job mid-day skips that day if the new time has already passed.
It's the box that never sleeps, so I can.
It's live, hosting roughly two dozen jobs plus the always-on copilot.
This is the physical substrate of the company of one. Every new automation I build just becomes another launchd job on a box that doesn't forget to run.