What problem does it solve? Adding sound to a visionOS app involves choosing between RealityKit spatial audio on entities and simpler non-spatial playback, and mistakes like loading audio on the playback path or letting an AVAudioPlayer deinit cause silent or glitchy results. This Skill provides the decision logic and correct code patterns for both approaches. ## Core Features & Use Cases - Spatial audio on entities: Play positional 3D sound from RealityKit entities using AudioFileResource, SpatialAudioComponent, and AudioPlaybackController, with reverb and ambient/channel components. - Non-spatial UI sound effects: Play one-shot chimes and tap sounds with AVAudioPlayer or AudioServicesPlaySystemSound in 2D window flows. - Use Case: When a long async job finishes in your visionOS app, play a completion chime exactly once on the status transition — spatially from the model entity if one exists, or via a retained AVAudioPlayer in a plain SwiftUI flow. ## Quick Start Use the spatial-audio-sound skill to play a completion chime when my model generation task finishes in my visionOS app.