- macOS 14.0 (Sonoma) or later
- Xcode Command Line Tools
- Swift 5.9+
- Apple Developer certificate (for hardened runtime signing)
# Build, sign, and package the .app bundle
./build.sh
# Launch
open .build/ScreenRecorder.app
# Or build and run directly (debug)
swift build && .build/debug/ScreenRecorderGenerate or update the app icon from any source image:
# Generate all macOS icon sizes + .icns from a single image
./generate_icons.sh /path/to/your/icon.png
# Rebuild with the new icon
./build.shThe script uses sips + iconutil (built-in macOS tools, no dependencies) and produces all 10 required sizes (16px–1024px including @2x variants).
On first launch, macOS will prompt you to grant:
- Screen Recording — Required to capture your display
- Camera — Required for webcam overlay (optional)
- Microphone — Required for voice recording (optional)
- Accessibility — Required for keystroke overlay (System Settings → Privacy & Security → Accessibility)
| Data | Location |
|---|---|
| Preferences | UserDefaults (standard) |
| AI provider config | ~/Library/Application Support/ScreenRecorder/ai_providers.json |
| API keys | macOS Keychain |
| Recordings | ~/Movies/ScreenRecorder/ |
cat ~/Library/Application\ Support/ScreenRecorder/ai_providers.json | python3 -m json.tool