V
visionos-immersive-media-developer
About visionos-immersive-media-developer
A visionOS development skill for choosing and implementing immersive media playback architectures. It helps developers match media types to AVKit or RealityKit surfaces and account for scene transitions, playback events, and comfort.
Key features
- 01Choose playback architecture
- 02Select viewing modes by media type
- 03Handle scene and mode transitions
- 04Use playback events for UI and rendering
- 05Plan comfort mitigation
Use cases
- 01Choosing window, portal, or immersive playback
- 02Building a custom RealityKit video surface
- 03Managing transitions between viewing modes
- 04Responding to playback readiness and comfort issues
Install
Copy the command and run it in a terminal.
$
npx skills add https:/ / github.com/ tomkrikorian/ visionosagents --skill visionos-immersive-media-developerAfter installing, type/visionos-immersive-media-developerin Claude Code to confirm it loaded.
Bundled files
References and scripts installed along with SKILL.md.
agents/openai.yamlreferences/apmp-and-spatial-video.mdapple-immersive-video-authoring.mdavexperiencecontroller.mdavkit-visionos-playback.mdcomfort-mitigation.mdimmersive-viewing-modes.mdplayback-decision-tree.mdvideo-player-events.mdvideoplayercomponent-basics.mdDetails
From the project READMEvisionOS Immersive Media Developer
Quick Start
Decide first whether the app should use the system AVKit experience or a custom RealityKit playback surface.
- Clarify the media shape: surface video, portal, progressive immersive, full immersive, spatial video, or Apple Immersive Video.
- Load only the matching reference files.
- Treat playback-mode changes as both media and scene-orchestration work.
Load References When
| Reference | When to Use |
|---|---|
playback-decision-tree.md | Decision tree: window vs portal vs progressive vs full immersive playback. |
avkit-visionos-playback.md | When using AVKit AVPlayerViewController and AVExperienceController as the system playback surface. |
avexperiencecontroller.md | When AVKit AVExperienceController is the right surface for the product. |
videoplayercomponent-basics.md | When you need to set up VideoPlayerComponent + AVPlayer correctly. |
video-player-events.md | When RealityKit video playback must drive UI, scene transitions, rendering readiness, or comfort mitigation from VideoPlayerEvents. |
apmp-and-spatial-video.md | When the content is spatial video, APMP, or Apple Immersive Video. |
immersive-viewing-modes.md | When implementing portal, progressive, or full modes and related scene transitions. |
comfort-mitigation.md | When handling comfort violations and mitigation strategies. |
apple-immersive-video-authoring.md | When you need Apple Immersive Video authoring or packaging references. |
Workflow
- Choose the playback architecture.
- Load the references for that surface and media type.
- Implement playback and viewing-mode transitions.
- Add event handling and comfort mitigation where relevant.
- Summarize the playback path, transition model, and remaining validation work.
Guardrails
- Start with AVKit
AVExperienceControllerwhen the system player experience fits the product. - Use RealityKit
VideoPlayerComponentwhen the video must live in a custom scene graph. - Do not treat immersive-mode transitions as a simple property flip when the app also needs scene changes.
- Make sure the user has a clear exit path from immersive playback.
Output Expectations
Provide:
- the chosen playback architecture
- the media type and viewing mode
- which references were used
- the transition or event model involved
- the next validation step
Comments
Markdown supported