import AppKit import UserNotifications class AppDelegate: NSObject, NSApplicationDelegate { func applicationDidFinishLaunching(_ aNotification: Notification) { let args = ProcessInfo.processInfo.arguments let subtitle = args.count > 1 ? args[1] : "" let body = args.count > 2 ? args[2] : "" let center = UNUserNotificationCenter.current() center.requestAuthorization(options: [.alert, .sound]) { granted, _ in guard granted else { DispatchQueue.main.async { NSApp.terminate(nil) } return } let content = UNMutableNotificationContent() content.title = "Photon Uploader" content.subtitle = subtitle content.body = body content.sound = .default let trigger = UNTimeIntervalNotificationTrigger(timeInterval: 0.1, repeats: false) let request = UNNotificationRequest( identifier: UUID().uuidString, content: content, trigger: trigger ) center.add(request) { _ in DispatchQueue.main.asyncAfter(deadline: .now() + 1.5) { NSApp.terminate(nil) } } } } } let app = NSApplication.shared app.setActivationPolicy(.prohibited) let delegate = AppDelegate() app.delegate = delegate app.run()