Skip to content
Development
Skill

/hz-api-upgrade

Upgrades Meta VR apps to newer Horizon OS SDK versions — migration guides, deprecated API replacements, changelog. Use when updating SDK versions or fixing deprecated API warnings. Build paths: all Meta VR app stacks; use hz-quest-verify-first if the build path is unclear.

From plugin
meta-vr
24336 skills1 MCP

Claude Code

$ npx -y skills add meta-quest/agentic-tools --skill hz-api-upgrade --agent claude-code

SKILL.md

hz-api-upgrade.SKILL.md
name: hz-api-upgrade
license: Apache-2.0
description: "Upgrades Meta VR apps to newer Horizon OS SDK versions — migration guides, deprecated API replacements, changelog. Use when updating SDK versions or fixing deprecated API warnings. Build paths: all Meta VR app stacks; use hz-quest-verify-first if the build path is unclear."
allowed-tools: Bash(metavr:*), Bash(hzdb:*)

Horizon API Upgrade Skill

For Unity projects using the Meta XR SDK, use the dedicated [`hz-unity-sdk-upgrade`](../hz-unity-sdk-upgrade/SKILL.md) skill. Continue here for Unreal, native Android or Spatial SDK, Web or IWSDK, and general cross-platform upgrade planning.

When to Use

Use this skill when:

  • Upgrading an existing Meta VR application to a newer Horizon OS SDK version
  • Fixing deprecated API warnings or compilation errors after an SDK update
  • Migrating between major API versions (e.g., VrApi to OpenXR)
  • Understanding what changed between SDK releases
  • Planning an upgrade path for a project that has fallen behind on SDK versions

General Upgrade Workflow

Every SDK upgrade, regardless of platform, follows the same high-level process:

1. Identify Current SDK Version

Determine what version the project currently targets:

  • **Unity**: Check `Packages/manifest.json` or the Package Manager UI for `com.meta.xr.*` package versions
  • **Unreal**: Check the Meta XR Plugin version in `.uplugin` files or the Plugins browser
  • **Spatial SDK / Android**: Check `build.gradle` or `build.gradle.kts` for `com.meta.spatial:*` dependency versions
  • **Web / IWSDK**: Check `package.json` for `@meta-spatial-sdk/*` or `@iwsdk/*` package versions

2. Check the API Changelog

Before upgrading, review what changed between your current version and the target version. See [references/api-changelog.md](references/api-changelog.md) for a summary of recent changes.

Use the device hub to search documentation:

metavr docs search "release notes v72"
metavr docs search "migration guide openxr"

3. Update SDK Dependencies

Update the version numbers in your project configuration:

  • **Unity**: Update via Package Manager or edit `manifest.json` directly
  • **Unreal**: Download and install the new plugin version
  • **Gradle projects**: Bump version strings in `build.gradle`
  • **npm projects**: Run `npm update` or edit `package.json`

4. Fix Deprecated API Calls

After updating, compile the project and address errors and warnings. See [references/deprecation-guide.md](references/deprecation-guide.md) for common replacements.

# Search project for known deprecated APIs
grep -rn "vrapi_" --include="*.c" --include="*.cpp" --include="*.h" src/
grep -rn "OVRManager" --include="*.cs" Assets/

5. Test on Device

Deploy and verify functionality on a connected Meta VR device:

metavr app install ./build/output.apk
metavr app launch com.yourcompany.yourapp

6. Run Performance Check

Ensure the upgrade did not introduce performance regressions:

metavr perf capture

Platform-Specific Upgrade Paths

Unity: Meta XR SDK

The Meta XR SDK for Unity is distributed as UPM packages. Upgrades are performed through the Unity Package Manager. Key packages include `com.meta.xr.sdk.core`, `com.meta.xr.sdk.interaction`, and `com.meta.xr.sdk.platform`.

See [references/sdk-migration.md](references/sdk-migration.md) for the step-by-step Unity upgrade guide.

Unreal Engine: Meta XR Plugin

The Meta XR Plugin for Unreal is distributed as an engine plugin. Upgrades involve downloading the new plugin version and regenerating project files.

See [references/sdk-migration.md](references/sdk-migration.md) for the step-by-step Unreal upgrade guide.

Android / Spatial SDK

The Meta Spatial SDK is distributed as Gradle dependencies. Upgrades involve bumping version numbers in your Gradle build files.

See [references/sdk-migration.md](references/sdk-migration.md) for the step-by-step Spatial SDK upgrade guide.

Web / IWSDK

The Immersive Web SDK is distributed as npm packages. Upgrades involve updating package versions in `package.json`.

See [references/sdk-migration.md](references/sdk-migration.md) for the step-by-step IWSDK upgrade guide.

Common Upgrade Issues

Namespace Changes

Meta has progressively moved from `Oculus.*` and `OVR*` namespaces to `Meta.*` namespaces. After an upgrade, you may see compilation errors due to renamed classes or moved packages.

Removed APIs

APIs that were deprecated in previous versions may be fully removed in newer versions. If you skipped intermediate upgrades, you may encounter missing symbols. Always upgrade incrementally.

New Required Permissions

Newer Horizon OS versions may require additional permissions in your `AndroidManifest.xml`. Common additions include:

  • `com.oculus.permission.HAND_TRACKING` for hand tracking features
  • `horizonos.permission.HEADSET_CAMERA` for passthrough camera access
  • New `<meta-data>` entries for feature declarations

Manifest Changes

Newer SDK versions may require updated `<meta-data>` entries in `AndroidManifest.xml`, such as `com.oculus.supportedDevices` or updated `minSdkVersion` values.

Android SDK Targeting Requirement

New binary uploads for Meta Horizon apps must set `targetSdkVersion` within the supported range.

What's required

  • Set `targetSdkVersion` to **API level 32-34** for immersive apps (or 32-36 for 2D panel apps)
  • `minSdkVersion` can remain at API level 32
  • Applies to all new binary uploads for both new and existing apps
  • Existing published apps continue to work without changes

How to update

**Unity:** Use the Project Setup Tool in the Meta XR SDK -- it can update API versions automatically. Or manually set in Player Settings -> Other Settings -> Target API Level.

**Unreal:** Use the Project Setup Tool in the Meta XR Plugin. Or set in Project Settings -> Android -> Target SDK Version.

**Gradle (Spatial SDK / Native):**

android {
Read more
@meta-quest
Ships withmeta-vr

Agentic skills and tools for Meta VR and Horizon OS development.

24336 skills1 MCP
Get the whole plugin

Stars on GitHub

Momentum

stars in total
243
Star history of meta-quest/agentic-tools on GitHub, a chart by star-history.com

Other skills on meta-vr.

hz-android-2d-porting

hz-android-2d-porting

Guides porting existing Android 2D apps to Meta VR and Horizon OS — input adaptation, panel layout, and design requirements. Use…

@meta-quest@meta-questInstall Skill
hz-immersive-designer

hz-immersive-designer

Guides design of comfortable, intuitive VR/MR experiences for Meta VR and Horizon OS — comfort guidelines, interaction patterns,…

@meta-quest@meta-questInstall Skill
hz-iwsdk-webxr

hz-iwsdk-webxr

Builds WebXR experiences for Meta VR and Horizon OS using the Immersive Web SDK (IWSDK) — ECS architecture, Three.js integration,…

@meta-quest@meta-questInstall Skill
hz-metavrx-layout-sdk

hz-metavrx-layout-sdk

Build multi-window Meta Horizon OS experiences with the MetaVrx Layout SDK in Jetpack Compose or React Native. Covers framework…

@meta-quest@meta-questInstall Skill
hz-metavrx-ui-set

hz-metavrx-ui-set

Builds app UI for Meta VR and Horizon OS with the MetaVrx UI Set, a Jetpack Compose component library and design system. Covers…

@meta-quest@meta-questInstall Skill
hz-new-project-creation

hz-new-project-creatio…

Scaffolds new Meta VR and Horizon OS projects after the build path is selected — Standard Android, Meta Spatial SDK, Unity,…

@meta-quest@meta-questInstall Skill

More skills from other plugins.

brainstorming
Auto-invoked

brainstorming

You MUST use this before any creative work - creating features, building components, adding functionality, modifying behavior, or…

@obra@obraInstall Skill
ask-matt

ask-matt

Ask which skill or flow fits your situation. A router over the skills in this repo.

skills11d309k
@mattpocock@mattpocockInstall Skill
accessibility
Auto-invoked

accessibility

Design, implement, and audit accessible UI to WCAG 2.2 Level AA across Web, iOS, and Android — semantic ARIA roles and labels,…

ecc13d293k
@affaan-m@affaan-mInstall Skill
compiler-commit

compiler-commit

Use when you want to verify compiler changes and commit with the correct convention. Runs tests, lint, and format, then commits…

react2d252k
@facebook@facebookInstall Skill

Questions about hz-api-upgrade.

Which coding agents can use hz-api-upgrade?
hz-api-upgrade installs in Claude Code, Codex, Cursor, Gemini CLI, GitHub Copilot, OpenCode and Windsurf with the skills CLI, using each agent's flag shown on this page. Flowy's auto-invocation, which fires a skill when your prompt matches, runs in Claude Code only.