You kick off a long agent run and walk away — then your Mac sleeps and the session dies with it. NoNap keeps the machine alive while the AI does the long work: Claude Code, Cursor, Codex, local model inference, overnight jobs — and can wait until the job is done, not just until a timer runs out. (Still great for the builds and backups you already use it for.)
Point NoNap at the run itself — pick the process (Claude Code, Cursor, Codex, node, python, ollama…) or paste a PID, and it stays awake until that job exits, then stops on its own. A guessed timer ends too early and kills the session, or burns hours of battery after the work is already done.
Or just set a window — a preset from 15 minutes to 8 hours, or a custom duration you type. A live countdown ticks down in the menu bar and shuts off on its own, with a notification when it closes.
Step out for coffee or leave it overnight. Keep the system running while the screen dims, keep the display lit to watch the logs, or hold both — your call. The session survives until you say stop.
Just macOS IOPMAssertion power assertions — the same mechanism caffeinate uses. No background daemon, no drain; a light kill(pid,0) probe is all the watch costs. It releases the moment the job ends or you stop.
A coffee cup, green when it's working, a faint ring when it isn't. It remembers your last mode. No window, no settings, no dock icon — that's the entire app.
The agent keeps running while the screen is free to dim. Best for headless runs, builds, and SSH.
The screen stays lit too — for watching the agent's output scroll by in real time.
Nothing dozes — system and display held wide awake together.
Ad-hoc signed, not notarized — the “Open Anyway” step is a one-time Gatekeeper bypass (or run xattr -dr com.apple.quarantine on the app). Apple Silicon (arm64).