A macOS menu bar app that prevents accidental app quits by adding a delay to Cmd-Q
Features • Installation • Usage • 中文文档
SlowQuit adds a customizable delay to the Cmd-Q keyboard shortcut on macOS, preventing accidental application quits. When you press Cmd-Q, a circular progress indicator appears and you must hold the keys for the configured duration before the app quits.
- Global Cmd-Q Interception - Works across all applications
- Customizable Delay - Adjust delay duration from 0.5 to 3.0 seconds
- App List Management - Whitelist/blacklist specific apps
- Visual Progress Indicator - Circular overlay shows remaining time
- Lightweight & Native - Built with Swift and SwiftUI
- Privacy-Focused - Works locally, no data collection
- Multilingual - English and Simplified Chinese support
- Download the latest
.dmgfile from Releases - Open the .dmg file
- Drag SlowQuit to your Applications folder
- Launch from Applications folder
When you first launch SlowQuit, macOS will show a security warning:
-
Gatekeeper Warning: "SlowQuit" cannot be opened because it is from an unidentified developer
- Click "Cancel"
- Open System Settings → Privacy & Security
- Scroll to Security section and click "Open Anyway"
- Click "Open" in the confirmation dialog
-
Accessibility Permission: Required for keyboard monitoring
- Click "Open System Settings" when prompted
- Enable SlowQuit in Privacy & Security → Accessibility
- Restart SlowQuit
Alternative Method: Right-click on SlowQuit.app → Open → Open (in confirmation dialog)
- Press and hold Cmd-Q in any application
- A circular progress indicator appears on screen
- Keep holding until the progress completes (default: 1 second)
- Release early to cancel the quit operation
- Enable/Disable - Toggle Cmd-Q interception
- Settings - Configure delay duration and app lists
- Launch at Login - Start automatically on boot
- Check for Updates - Manual update checking
- About - View version information
- Quit - Exit SlowQuit
Delay Duration: Adjust the hold time from 0.5 to 3.0 seconds
App List Modes:
- Global: Apply to all applications (default)
- Whitelist: Only apply to selected apps
- Blacklist: Exclude selected apps from delay
Managing App Lists:
- Select whitelist or blacklist mode
- Click "Manage App List"
- Add applications from running apps or browse installed apps
- Remove apps with the × button
- macOS 12.0+
- Xcode 14.0+
- Swift 5.9+
-
Clone and open:
git clone https://github.com/dudukee/slowquit.git cd slowquit open SlowQuit.xcodeproj -
Configure signing:
- Select project → Signing & Capabilities
- Choose your signing team or "Sign to Run Locally"
-
Build and run:
xcodebuild -project SlowQuit.xcodeproj -scheme SlowQuit -configuration Release build
Or press Cmd+R in Xcode.
-
Grant accessibility permission when prompted and restart the app.
- Open System Settings → Privacy & Security
- Click "Open Anyway" next to the SlowQuit message
- Alternatively: Right-click app → Open → Open
- Check Accessibility permission in System Settings
- Ensure SlowQuit is enabled in Privacy & Security → Accessibility
- Restart the app
- macOS 13+: System Settings → General → Login Items
- Remove and re-add SlowQuit to the login items list
- Local Operation: All processing happens on your Mac
- No Telemetry: Zero analytics or usage tracking
- Open Source: Full source code available for audit
- Minimal Permissions: Only Accessibility permission for keyboard monitoring
Why Accessibility Permission? Required to monitor global keyboard events using CGEventTap - the only way to intercept Cmd-Q before it reaches applications.
MIT License - see LICENSE file for details.
- Issues: GitHub Issues
- Updates: Releases
Made for macOS users who hate accidental quits