Keep your Mac awake only while it's actually working
Most keep-awake tools have one setting: on. You flip the switch, the Mac stays up, and it stays up long after the job that needed it has finished. Auto Mode takes a narrower view. The goal here is to keep a Mac awake only while work is actually running, and to let it sleep again the moment nothing is.
An open app is not a working one
A plain wake lock cannot tell the difference between a build that is grinding away and an editor that has been idle for an hour. To it, both are just processes that exist. So it holds the Mac awake either way, and keeps holding it long after the work is done.
But "the app is open" and "the app is working" are not the same thing. Claude Code sitting at a prompt waiting for you is not doing CPU work. A Docker daemon with nothing building is not doing CPU work. Holding a Mac awake for those is just running the battery down for nothing.
Auto Mode draws the line at activity, not presence. It watches the dev and AI tools you care about and asks a sharper question: is this process actually busy right now, or is it merely running?
How activeness is measured
LidRun detects watched tools by process name, and for interpreters like python or node it can match on the command line too, so a long script counts even though the binary is just "python". Detection is only the first half, though.
The deciding factor is CPU. A process counts as active only when its CPU usage is above a threshold, so an idle-but-open app does not keep the Mac awake. A GUI app has to clear a CPU floor, expressed as a percentage of one core, before it counts as real work; command-line processes use their own rule. The effect is that a window left open in the background does not, by itself, hold the session.
This is deliberately a coarse signal rather than a perfect one. The point is to separate genuine load from an idle process sitting in memory, not to profile your code.
Panduan terkaitThe safety governor: why LidRun won't keep a hot or idle Mac awakeA holdoff so it doesn't flap
Real workloads are bursty. A build pauses between stages, an agent waits on a network call, inference catches its breath between tokens. If LidRun released the instant CPU dipped under the threshold, it would drop the session during those small gaps and the Mac could sleep mid-job.
So there is a configurable holdoff. After the last active sample, LidRun keeps the assertion alive for N more seconds before deciding the work has really stopped. That smooths over the natural ebb and flow and stops the keep-awake state from flapping on and off.
When nothing has matched for the whole holdoff window, LidRun releases and lets the Mac return to its normal sleep behavior. No watched work, no reason to stay up.
Why letting it sleep is the point
A dumb wake lock that stays on forever has a cost. On battery it drains the cell while nothing is happening; plugged in it still keeps the chip from resting. The whole value of Auto Mode is that it ends when the work does.
And every keep-awake decision still runs through the safety governor. Even while a job is genuinely busy, if charge drops past your threshold or thermal pressure climbs too high, LidRun lets the Mac sleep rather than pushing the hardware. Auto Mode decides when to stay awake; the governor decides when it is no longer safe to.
Set the watched tools once, pick a CPU floor and a holdoff you trust, and then mostly forget it. The Mac stays up while a build, an agent, or a model run is actually working, and quietly sleeps the rest of the time. It helps reduce wasted runtime; it does not promise the Mac can never get warm or never drain, so airflow and mains power still matter for the long stuff.
LidRun menjaga pekerjaan Anda tetap jalan saat layar tertutup, dengan perlindungan baterai dan suhu bawaan.
Sering ditanyakan
Because an open app is not necessarily a working one. A process counts as active only when its CPU usage is above a threshold, so an idle window in the background does not hold the session on its own.
A GUI app has to exceed a CPU floor, expressed as a percentage of one core, before it counts as real work. Command-line processes use their own rule. The floor is what separates genuine load from an idle process.
No, that is what the holdoff is for. After the last active sample, LidRun keeps the Mac awake for the configured number of seconds before deciding work has stopped, so short pauses between stages do not end the session.
Once no watched process has been active for the whole holdoff window, LidRun releases the keep-awake assertion and lets the Mac return to its normal sleep behavior. The battery and thermal limits apply throughout.