Repository navigation
Releases: Tran-Duc-Duy/nonsleep
Releases · Tran-Duc-Duy/nonsleep
Release list
NonSleep v0.2.0
Added
- Hook integration for OpenAI Codex CLI (
~/.codex/hooks.json). - Custom duration timer input in the menu bar app and management window (e.g.
45m,2h,1h30m). - Helpful descriptive subtitles in the settings window for locks, safeguards, and process lists.
- Usage examples in
nonsleep help. AGENTS.mdandllms.txtspecifications for agent and LLM search discoverability.
Security
- Prevented a TOCTOU race condition in
Setup.installSudoers: the draft rule is now staged directly into/etc/sudoers.d/as0440 root:wheelbeforevisudo -cvalidation, preventing unprivileged local processes from swapping the file between check and install. - Pinned all GitHub Actions in CI and release workflows to immutable commit SHAs.
- Added cryptographic SLSA Level 3 build provenance (
actions/attest-build-provenance) for all release artifacts. - Added automated CodeQL static security analysis workflow (
security.yml) scanning on push, pull request, and weekly schedule.
Fixed
- Hook commands written by
nonsleep integratenow quote the CLI path correctly when the app lives in a directory containing an apostrophe. - Corrected clone directory in README setup instructions.
NonSleep v0.1.1
Changed
- New app icon: a MacBook closed all the way, with a glowing sparkle and a status LED.
NonSleep v0.1.0
First public release.
Added
- Lid-closed mode for macOS: toggles
pmset disablesleeponly while a live lease exists, through a
sudoers rule that allows exactlypmset -a disablesleep 0|1. - Leases tied to a process, an expiry and the current boot; a LaunchAgent reaper sweeps dead ones
every minute, so a crash or reboot can't leave the Mac unable to sleep. - Safety cut-outs: low battery (default < 20%) and serious/critical thermal state; immediate sleep
when work ends with the lid closed and no external display. - Agent detection: omp's
"omp agent session"power assertion (every session, project and
provider),caffeinate, and optional process names. - Hook integrations for Claude Code, Cursor and Antigravity (
nonsleep integrate), leaving other
hooks untouched and keeping a backup of each file. - Menu bar app with a management window: status, leases with per-lease release, agents,
integrations, settings, setup check, Sleep now, lock on lid close, launch at login. nonsleepCLI:status,on,off,sleep,run,wait,auto,reap,config,setup,
integrate,hook.- In-app "Finish setup…" (one administrator dialog) and
nonsleep setup, so the downloaded app
works without the source tree. - Linux CLI (x86_64, aarch64): lid-closed mode through a logind
handle-lid-switch:sleepinhibitor
held by an on-demand keeper process (no root), omp detection via login1 inhibitors, the same
hooks, lock on lid close vialoginctl, andinstall.shwith desktop autostart fornonsleep auto.