Overview
SuperCmd requires several macOS permissions to provide its core features. The app will prompt you for these permissions on first use, or you can grant them manually in System Settings → Privacy & Security.You may need to restart SuperCmd after granting permissions for them to take effect.
Required Permissions
These permissions are essential for SuperCmd’s core functionality:Accessibility
Why it’s needed:- Window management (tiling, resizing, positioning)
- Snippet expansion (keyboard injection)
- Getting selected text from other apps
1
Open System Settings
Go to System Settings → Privacy & Security → Accessibility
2
Add SuperCmd
Click the + button and select SuperCmd from Applications
3
Enable the toggle
Ensure SuperCmd is checked in the list
4
Restart SuperCmd
Quit and relaunch the app
AXIsProcessTrusted()) to:
- Query window positions and sizes
- Move and resize windows programmatically
- Inject keystrokes for snippet expansion
- Read selected text via AppleScript
src/native/window-adjust.swift, src/native/snippet-expander.swift
Input Monitoring
Why it’s needed:- Detect global keyboard shortcuts (launcher hotkey, hold-to-speak)
- Monitor modifier keys (Fn key for voice input)
- Per-command hotkeys
1
Open System Settings
Go to System Settings → Privacy & Security → Input Monitoring
2
Add SuperCmd
Click the + button and select SuperCmd
3
Enable the toggle
Ensure SuperCmd is checked
4
Restart SuperCmd
Quit and relaunch the app
CGEventTapCreate()to listen for global key eventsIOHIDManagerto detect Fn key holds- Electron’s
globalShortcutAPI (requires Input Monitoring)
src/native/hotkey-hold-monitor.swift, src/main/main.ts (globalShortcut registration)
Optional Permissions
These permissions enable additional features:Microphone
Why it’s needed:- Voice input (hold-to-speak dictation)
- Whisper speech-to-text
- Only if you plan to use voice input features
- Prompted when you first try to use voice input
1
Open System Settings
Go to System Settings → Privacy & Security → Microphone
2
Add SuperCmd
Click the + button and select SuperCmd
3
Enable the toggle
Ensure SuperCmd is checked
If you don’t use voice input, you can safely skip this permission.
AVAudioEnginefor audio captureSFSpeechRecognizerfor native speech recognition- OpenAI Whisper API for transcription (when configured)
src/native/speech-recognizer.swift, src/main/ai-provider.ts (transcribeAudio)
Automation (AppleScript)
Why it’s needed:- Get selected text from the frontmost app
- Get selected files in Finder
- Extension actions that use AppleScript
- When extensions call
getSelectedText()orgetSelectedFinderItems() - For extensions that automate other apps
1
Open System Settings
Go to System Settings → Privacy & Security → Automation
2
Find SuperCmd
Look for SuperCmd in the app list
3
Enable target apps
Check the boxes for apps SuperCmd should automate (e.g., Finder, Safari)
macOS will automatically prompt you the first time SuperCmd tries to automate an app.
- Extract selected text:
tell application "System Events" to get value of attribute "AXSelectedText" - Get Finder selection:
tell application "Finder" to get selection
src/main/main.ts (IPC handler for get-selected-text)
Permission Summary
Checking Permission Status
SuperCmd includes native helpers to check permission status:Accessibility Check
Microphone Check
Input Monitoring Check
SuperCmd attempts to register a global shortcut and reports failure if Input Monitoring is missing. Source:src/native/input-monitoring-request.swift
Troubleshooting
Global hotkey doesn't work
Global hotkey doesn't work
- Open System Settings → Privacy & Security → Input Monitoring
- Ensure SuperCmd is in the list and enabled
- If not listed, remove and re-add it
- Restart SuperCmd
- Try a different hotkey combination in Settings
Window management doesn't work
Window management doesn't work
- Open System Settings → Privacy & Security → Accessibility
- Ensure SuperCmd is enabled
- If already enabled, uncheck and re-check the box
- Restart SuperCmd
- Test by searching for “Window Management” in the launcher
Voice input doesn't work
Voice input doesn't work
- Check System Settings → Privacy & Security → Microphone
- Ensure SuperCmd is enabled
- Test microphone with another app (Voice Memos)
- Check AI settings (must have Whisper configured)
- Check
/var/log/system.logfor audio capture errors
'Permission denied' when trying to grant permissions
'Permission denied' when trying to grant permissions
This usually means your macOS user account doesn’t have admin privileges:
- Log in with an admin account
- Grant permissions
- Switch back to your standard account
Permissions keep getting revoked
Permissions keep getting revoked
This can happen if:
- The app signature changed (development builds vs. signed releases)
- macOS security policy changed
- The app was moved after permissions were granted
Resetting Permissions
To completely reset all permissions:Next Steps
Settings
Configure app settings
AI Providers
Set up AI integrations
Hotkeys
Customize keyboard shortcuts
Troubleshooting
Common issues and solutions