Quiet and frugal
Apple silicon idles at a few watts and is nearly silent, so leaving it on all day, every day is cheap and unobtrusive.
0:01 Turn a Mac mini into an always-on personal AI server: a home for your AI assistants and coding agents, running around the clock.
0:08 Start with the hardware. Any Apple silicon Mac mini works. Get plenty of memory and storage, and use wired Ethernet.
0:14 Finish the initial macOS setup, install every update, and create a dedicated admin account.
0:20 Next, keep it awake. The setup-power script uses pmset to disable sleep and restart automatically after a power failure. It's a dry run by default, so you see every change first.
0:31 For unattended reboots, know the tradeoff: automatic login brings your agents back on its own, but it requires turning FileVault off.
0:38 For remote access, add Tailscale for a private network, and turn on Screen Sharing and Remote Login.
0:44 Login items and LaunchAgents start your background jobs and keep them alive. A template is included.
0:50 Sync files with iCloud, Google Drive, or OneDrive, so agents work on the same documents you do.
0:56 Then install your tools: Homebrew, Node, and Python, plus Cursor, Claude, and a Cursor private worker.
1:03 Harden it: firewall on, strong passwords, automatic security updates, and only the sharing you need.
1:09 Back it up with Time Machine, and test a restore.
1:12 After every reboot, run the health-check script to confirm power, network, sync, and agents are all healthy.
1:18 Always on, recoverable, and secure. Grab the full guide and scripts to set up yours.
Quiet and frugal
Apple silicon idles at a few watts and is nearly silent, so leaving it on all day, every day is cheap and unobtrusive.
Runs the tools you already use
Cursor, Claude, Homebrew, Node, Python, Xcode, iOS simulators, a real browser — everything your agents need, on the same OS you work on.
Always reachable
With Tailscale, Screen Sharing and SSH you can check on long-running agents from your laptop or phone — without opening a single port on your router.
Self-healing
Power settings, LaunchAgents and a health check mean jobs restart on their own and you know within a minute of a reboot whether everything came back.
Every script is dry-run by default, safe to run twice, and prints exactly what it would change before
you add --apply.
setup-power.sh
Never sleep, restart after a power failure or freeze, optional daily power-on. Read more
health-check.sh
After a reboot: what’s running, what isn’t, and why. PASS / WARN / FAIL. Read more
install-launchagent.sh
Turn any command — like a Cursor worker — into a job launchd keeps alive. Read more