The problem
Long builds, test suites, and CI pipelines can take hours. If you step away to grab coffee and your Mac sleeps, the process halts.
Why it happens
Xcode, terminals running builds, and test runners don't always request sleep prevention. The idle timer counts time since your last mouse or keyboard input, not whether a process is actively running.
The fix: Shake It On
Shake It On keeps your Mac awake by moving the mouse slightly at regular intervals. macOS sees real user activity and resets the idle timer. Set it up with the right conditions and it only runs when you're actually coding.
Recommended conditions for coding:
- Only Shake If CPU is above 20% (catches active builds)
- Only Shake If a specific app is running (Xcode, Terminal)