☕️ Presets & live countdown
Stay awake indefinitely, or for 5 / 10 / 15 / 30 minutes, 1 / 2 / 4 hours, or a custom duration — with a live countdown and one-click add time.
A free, open-source macOS menu-bar app that keeps your Mac awake — for a preset
duration or indefinitely — by wrapping the native caffeinate command.
It never leaves a stray power assertion running, never drifts its countdown across
sleep, and never claims your Mac is awake when it isn't.
caffeinate-based tool, NoDoze cannot keep a Mac awake with
the lid closed while on battery — macOS only allows that on AC power. NoDoze offers an
explicitly AC-only "keep awake with the lid closed" option, and is upfront
that it does nothing on battery. Everything else — idle-sleep prevention for the display and
system — works regardless of power source.
Stay awake indefinitely, or for 5 / 10 / 15 / 30 minutes, 1 / 2 / 4 hours, or a custom duration — with a live countdown and one-click add time.
Every caffeinate is spawned with -w <NoDoze's PID>,
so if NoDoze ever crashes, macOS releases the assertion within ~2 seconds. No orphaned
process keeping your Mac awake until reboot.
The countdown is driven by a monotonic clock that survives system sleep and is immune to clock changes. On wake, NoDoze reconciles and respawns with the corrected time left.
Turns itself off when the battery gets low — with hysteresis, so it doesn't flap at the threshold.
Keep the screen on (default), or allow the display to sleep while the system stays awake.
Toggle awake from anywhere with ⌃⌥D. No reaching for the menu bar.
Stay awake automatically while a chosen app is running or an external display is connected. Manual control always wins.
Drive it from Terminal, Shortcuts, or Raycast with nodoze:// URLs:
start?minutes=30, start, stop,
toggle, extend?minutes=15.
brew tap alexnodeland/tap
brew install --cask no-doze
NoDoze-vX.Y.Z.zip from Releases.NoDoze.app to /Applications.xattr -cr /Applications/NoDoze.app.open "nodoze://start?minutes=30" # Keep awake for 30 minutes
open "nodoze://start" # Keep awake indefinitely
open "nodoze://extend?minutes=15" # Add 15 minutes
open "nodoze://stop" # Stop
open "nodoze://toggle" # Toggle
NoDoze is specification-first: a thorough RFC, 15 ADRs, and Gherkin acceptance scenarios that map 1:1 to tests. The logic layer carries a hard 100% region/line/function coverage gate enforced in CI; impure I/O is isolated behind ports so the core stays pure and fully testable.