Security & privacy

What gets installed, what data is used, and how to remove it — all in one place.

October 3, 2026 · Direct download from lidnight.app

What is installed

Install by moving Lidnight.app from the DMG into Applications (/Applications/Lidnight.app).

Setting up permission to keep the Mac awake with the lid closed asks for administrator authentication and installs these four files.

/Library/PrivilegedHelperTools/lidnight-power
Helper for the allowed power commands
/Library/PrivilegedHelperTools/lidnight-smc
Fan-control helper
/etc/sudoers.d/lidnight
Rule allowing the installing user to run the power helper
/Library/LaunchDaemons/app.lidnight.reset-sleep.plist
Boot-time task that clears the sleep-disable setting

App preferences use the macOS app.lidnight.Lidnight preferences domain; records and integration files live in ~/.lidnight/.

Enabling agent integration adds Lidnight hooks to ~/.claude/settings.json and ~/.codex/hooks.json. Existing files get a one-time backup beside them with the .lidnight-backup extension; the original Claude status-line setting is also saved for restoration on disconnect.

Choosing to install the terminal command creates ~/.lidnight/bin/lidnight and, if ~/.local/bin/ exists, a lidnight link there.

What uses administrator permission

Administrator authentication is handled by the macOS dialog. After installation, the app invokes the power helper through sudo -n; the helper allows the following operations.

This allowlist applies to the privileged helper. Separately, the app reads power settings with pmset -g and pmset -g custom, and sleeps the display or Mac with pmset displaysleepnow and pmset sleepnow. It uses nettop to read per-process byte counts.

Installation and removal use file-copy and permission-setting commands; app updates use tools including hdiutil, ditto, codesign and spctl to open the disk image and check its signature and notarization.

Data read and kept locally

Lidnight does not directly retrieve AI-service login tokens or browser cookies. It does use the Keychain for its own license. Its license key and activation instance ID are stored and read under app.lidnight.Lidnight.license.

Usage counting reads AI tools’ local log files, which may contain conversations, and extracts metadata such as token counts, models and projects. Limits come from supported tools’ logs or status lines, or the Claude CLI’s /usage result. This does not mean files containing prompts are never read. The usage code does not analyze prompt text or include it in phone alert messages.

~/.lidnight/usage.json keeps aggregates and metadata such as models, projects and per-file read positions. File paths are stored as hashed keys. history.json keeps activity records such as tasks and durations. Hooks record events, times, process IDs and working folders in sessions/.

The Claude status-line integration saves the entire status JSON containing rate_limits to ~/.lidnight/claude-status.json. It does not filter individual fields before saving, and forwards the same input to an existing status-line command if one was configured.

Work detection checks running processes, some command arguments, CPU and GPU activity, and network byte counts. Network usage detection does not inspect packet contents.

What goes over the network

Updates and pricing: the app retrieves version and sales status from lidnight.app/version.json, and API prices from lidnight.app/pricing.json. The update-check URL includes a timestamp; these requests do not attach AI logs or usage totals.

App updates: choosing to update downloads a DMG from the address in the update information, then checks its signature, notarization, app identity and version before replacement.

Licensing: activation sends your license key and an instance name containing your Mac’s name to api.lemonsqueezy.com. Revalidation and deactivation send the license key and instance ID.

Phone alerts and remote control: when enabled, notification bodies sent to ntfy.sh can include status, agent names, project folder names, times, battery levels and usage summaries. Remote buttons include the control topic address and secret; the Mac polls ntfy for commands. Manually sending a test alert also sends a notification.

Claude limits: the app runs the installed official Claude CLI with claude -p /usage --no-session-persistence --setting-sources "" and reads the result. The Claude CLI handles authentication and the lookup’s network activity.

How to remove Lidnight

  1. Start in the app. If you activated a license, choose Settings › Plan › Deactivate. This requests deactivation from the server and clears Lidnight’s local license entries from the Keychain. The app does not verify whether server deactivation succeeded; if activation on another Mac is blocked, contact support.
  2. Turn off Open at login and phone alerts in Settings, then disconnect each enabled agent integration. Disconnecting removes Lidnight hooks and restores the saved original status-line setting if the status line is still connected to Lidnight.
  3. If you changed the charge limit, return it to your preferred value (100% to remove the limit) before deleting the app. This setting is applied through macOS charging controls, not stored only in the app’s preferences.
  4. Choose Remove in Settings › Permission and complete administrator authentication. The app stops keeping the Mac awake and controlling its fans, attempts to restore sleep and automatic fan control, then removes the four privileged files listed above. Check sleep and fan behavior as well as the completion message, then quit the app.
  5. Move /Applications/Lidnight.app and ~/.lidnight/ to the Trash in Finder. Remove ~/.local/bin/lidnight too if it is a link pointing to Lidnight. This removes the records, integration scripts and terminal command.
  6. After quitting, run defaults delete app.lidnight.Lidnight in Terminal to clear app preferences. A message that the domain does not exist means there are no preferences left to remove.
  7. Finally, move any unneeded ~/.claude/settings.json.lidnight-backup and ~/.codex/hooks.json.lidnight-backup backups to the Trash. Keep the AI tools’ actual settings and conversation logs. You can also remove the Lidnight subscription you added in your phone’s ntfy app.

If removal reports an error, contact support@dawonlabs.com.

Back to Lidnight ›