addressables-design
Source-anchored design rules for Unity Addressables 1.22.3/2.9.1
Set up XR Interaction Toolkit (XRI) for VR/AR
Claude Code
$ npx -y skills add Besty0728/Unity-Skills --skill xr --agent claude-code
Codex
$ npx skills add Besty0728/Unity-Skills --skill xr -a codex -y
Cursor
$ npx skills add Besty0728/Unity-Skills --skill xr -a cursor -y
Gemini CLI
$ npx skills add Besty0728/Unity-Skills --skill xr -a gemini-cli -y
GitHub Copilot
$ npx skills add Besty0728/Unity-Skills --skill xr -a github-copilot -y
OpenCode
$ npx skills add Besty0728/Unity-Skills --skill xr -a opencode -y
Windsurf
$ npx skills add Besty0728/Unity-Skills --skill xr -a windsurf -y
name: unity-xr description: Set up XR Interaction Toolkit (XRI) for VR/AR
XR Interaction Toolkit setup and configuration. Every `xr_*` skill is reflection-based and supports XRI 2.x on Unity 2022 and XRI 3.x on Unity 6 and later. Parameters come from the schema (`GET /skills/schema?names=<skill>&wire=v2`); execution and dryRun rules: root [SKILL.md](../../SKILL.md).
> **Requires** `com.unity.xr.interaction.toolkit`. When it is missing, every `xr_*` skill returns the `NoXRI()` install instruction instead of running.
Skills that act on an existing GameObject find it by `name`, `entityId` (preferred; the only id on Unity 6000.4+), `instanceId` or `path`.
| Skill | Use | Key parameters | |-------|-----|----------------| | `xr_check_setup` | Validate the package, rig, managers and scene prerequisites | `verbose?` | | `xr_setup_rig` | Create an XR Origin with camera and controllers | `name`, `cameraYOffset?` | | `xr_setup_interaction_manager` | Add or find the interaction manager | none | | `xr_setup_event_system` | Add the XR UI input stack | none | | `xr_get_scene_report` | Report the scene's XR status | none |
| Skill | Use | Key parameters | |-------|-----|----------------| | `xr_add_ray_interactor` | Remote pointing and ray interaction | `name`, `maxDistance?`, `lineType?` | | `xr_add_direct_interactor` | Close-range hand grab | `name`, `radius?` | | `xr_add_socket_interactor` | Snap to a slot | `name`, `showHoverMesh?`, `recycleDelay?` | | `xr_add_grab_interactable` | Rigidbody, collider and grab configuration | `name`, `movementType?`, `throwOnDetach?` | | `xr_add_simple_interactable` | Hover and select without grab | `name` | | `xr_configure_interactable` | Fine-tune interactable behavior | target and changed fields only | | `xr_list_interactors` | List the scene's interactors | none | | `xr_list_interactables` | List the scene's interactables | none |
| Skill | Use | Key parameters | |-------|-----|----------------| | `xr_setup_teleportation` | Add a teleport provider to the XR Origin | none | | `xr_add_teleport_area` | Mark a surface as teleportable | `name`, `matchOrientation?` | | `xr_add_teleport_anchor` | Create a fixed teleport destination | `name`, `x`, `y`, `z`, `rotY?`, `matchOrientation?` | | `xr_setup_continuous_move` | Add stick locomotion | `moveSpeed?`, `enableStrafe?`, `enableFly?` | | `xr_setup_turn_provider` | Add snap or smooth turn | `turnType`, `turnAmount?`, `turnSpeed?` | | `xr_setup_ui_canvas` | Convert a Canvas for XR interaction | `name` |
| Skill | Use | Key parameters | |-------|-----|----------------| | `xr_configure_haptics` | Set hover and select vibration | `name`, intensities, durations | | `xr_add_interaction_event` | Wire an interaction callback to a target method | `name`, `eventType`, `targetName`, `targetMethod` | | `xr_configure_interaction_layers` | Set the InteractionLayerMask | `name`, `layers`, `isInteractor` |
curl -s "http://localhost:<port>/skill/xr_check_setup?expectProject=<project>" -d '{}'
curl -s "http://localhost:<port>/skill/xr_setup_rig?expectProject=<project>" -d '{"name":"XR Origin","cameraYOffset":1.36}'
curl -s "http://localhost:<port>/skill/xr_setup_event_system?expectProject=<project>" -d '{}'
curl -s "http://localhost:<port>/skill/xr_add_ray_interactor?expectProject=<project>" -d '{"name":"Right Controller","maxDistance":30,"lineType":"StraightLine"}'
curl -s "http://localhost:<port>/skill/xr_add_direct_interactor?expectProject=<project>" -d '{"name":"Left Controller"}'
curl -s "http://localhost:<port>/skill/xr_setup_teleportation?expectProject=<project>" -d '{}'
curl -s "http://localhost:<port>/skill/xr_add_grab_interactable?expectProject=<project>" -d '{"name":"MyCube","movementType":"VelocityTracking"}'Transport-level codes: [error codes](../../references/protocol-error-codes.md).
REST API-based AI-driven Unity Editor Automation Engine Let AI control Unity scenes directly through Skills 🎉 We are now indexed by DeepWiki! Got questions? Check out the AI-generated docs → The current official maintenance baseline is Unity 2022.3+.
Source-anchored design rules for Unity Addressables 1.22.3/2.9.1
Manage Addressables groups, entries, profiles and content builds (com.unity.addressables, reflection-based)
You MUST use this before any creative work - creating features, building components, adding functionality, modifying behavior, or…
Ask which skill or flow fits your situation. A router over the skills in this repo.