What problem does it solve? Background execution on iOS and macOS is opportunistic and heavily constrained, so code that assumes tasks run promptly or at all fails silently in production. This Skill guides writing and reviewing Swift background-execution code so scheduled tasks, transfers, and wake-ups actually run and the app is not terminated. ## Core Features & Use Cases - API selection and routing: Decision trees map each goal (refresh, maintenance, file transfer, push wake-up, audio, location) to the correct API: BGAppRefreshTask, BGProcessingTask, BGContinuedProcessingTask, background URLSession, silent/VoIP push, or UIBackgroundModes. - Correctness review: Validates registration timing, expiration handlers, setTaskCompleted contracts, balanced beginBackgroundTask/endBackgroundTask calls, the background URLSession relaunch flow, and APNs header requirements. - Use Case: A developer's BGAppRefreshTask never fires on device. The Skill identifies that the handler was registered in .onAppear instead of App.init(), the identifier is missing from BGTaskSchedulerPermittedIdentifiers, and the next request was never rescheduled, then provides before/after fixes. ## Quick Start Ask the agent to review your Swift background-execution code or write a new BGTaskScheduler, background URLSession, or silent push implementation for your iOS app.