Silently quits macOS apps when their last window is closed.
On macOS, closing the last window often does not actually close the app. It keeps hanging around in Cmd+Tab, steals a slot in your app switcher, and gets in the way when you are flying across apps with keyboard shortcuts.
Hush removes that friction. When an app is effectively done, Hush quietly quits it so your app switcher stays clean and your focus stays on the app you actually meant to jump to.
- Auto-quits windowless apps within ~1 second
- Keeps
Cmd+Tabfocused on apps you are actually using - Never quits background-only apps (Docker, Dropbox, etc.)
- Whitelist — protect apps you want to keep running
- Recently Quit list with "Keep" button to undo
- Launch at Login
- 0% CPU, ~130MB RAM at idle
- macOS 13 Ventura or later
- Accessibility permission (for window counting)
Grab the latest .dmg from Releases.
- Double-click the downloaded DMG — a window opens showing
Hush.app. - Drag
Hush.appinto/Applications(use the Applications shortcut in the DMG window). - Open Terminal and run:
xattr -dr com.apple.quarantine /Applications/Hush.app- Go to
/Applicationsin Finder, right-clickHush.app, and choose Open. - If macOS still shows a warning dialog, click Open to confirm.
Why the Terminal step? macOS quarantines apps downloaded from the internet and may silently delete unnotarized apps copied to
/Applications. Thexattrcommand strips that quarantine flag so macOS leaves the app in place. Once removed, Hush will also appear in your app drawer's Applications section and Launch at Login will work correctly across restarts.
Hush is currently distributed without Apple notarization, so macOS may warn that it "can't verify" the app the first time you open it.
Notarizing a macOS app for public distribution requires enrollment in the Apple Developer Program, which Apple currently lists at 99 USD per membership year in the U.S. Pricing can vary by region. For a free open-source utility, that recurring cost does not make much sense right now.
If you are cautious about running an unsigned app, that is completely reasonable. Hush is open source, so you can inspect the code yourself, build it from source, and decide whether you trust it before running it.
Hush needs Accessibility permission to work.
That permission is required because Hush monitors whether apps still have open windows. Without Accessibility access, macOS will not let Hush inspect window state, so it cannot safely decide when an app should be quit.
- When macOS prompts you, allow the app to open Accessibility settings.
- Open System Settings → Privacy & Security → Accessibility, then enable Hush.
Once permission is granted, Hush sits quietly in the menu bar and starts watching for regular apps with zero open windows.
Hush does not auto-update — new versions are installed manually by replacing the app in /Applications.
Each release is a fresh build with a new code signature, and macOS treats it as a different app for Accessibility purposes. That means after replacing the app, the old Accessibility entry stops working and Hush will silently stop quitting windowless apps until you re-grant it.
To update cleanly:
- Quit Hush from the menu bar (click the icon → Quit Hush).
- Open System Settings → Privacy & Security → Accessibility and remove the existing Hush entry (select it, then click the
–button). - Drag the new
Hush.appinto/Applications, replacing the old one. - Run the quarantine command again:
xattr -dr com.apple.quarantine /Applications/Hush.app- Launch Hush and re-enable it in Accessibility when prompted.
Hush lives in your menu bar and watches for regular apps that no longer have any open windows. When you close the last window and move on, Hush detects that state within about a second and calls terminate() automatically. Apps that are intentionally backgrounded, like Docker or Dropbox, are left alone.
The App Store requires sandboxing, which blocks the Accessibility API Hush depends on to count windows. Direct download only.
Hush writes a daily log file to ~/Library/Logs/Hush/ (one file per day, auto-cleaned after 7 days). If you hit a bug, please include the relevant log file when opening an issue.
To grab the logs:
- In Finder, press
Cmd+Shift+Gand paste~/Library/Logs/Hush/. - Attach the most recent
hush-YYYY-MM-DD.logfile to the GitHub issue.
Build the release artifact:
./scripts/build-dmg.sh 1.0.0Publish the GitHub release after the DMG already exists:
./scripts/release.shPRs welcome. Open an issue first for large changes.
MIT



