specs-preview-interaction

Drive Lens Studio previews with synthetic hand actions to test SIK interactables.

16|2|Updated Apr 13, 2026
One-click install
npx skills add https://github.com/lens-studio-devs/ls-extensions --skill specs-preview-interaction-lens-studio-devs
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: specs-preview-interaction
Source: https://github.com/lens-studio-devs/ls-extensions/tree/main/plugins/ls-clad/skills/specs-preview-interaction
Command: npx skills add https://github.com/lens-studio-devs/ls-extensions --skill specs-preview-interaction-lens-studio-devs

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes references (resource) components.

What problem does it solve? Testing interactive Spectacles Lenses requires manually performing hand gestures in the Lens Studio preview, which is slow and hard to automate. This Skill lets an AI agent drive the preview with synthetic hand actions to trigger buttons, manipulate objects, and verify Lens behavior end-to-end. ## Core Features & Use Cases - Synthetic Hand Actions: Perform Pinch, Hover, Poke, Drag, Gesture, Release, and Rotate actions against Interactable components via PreviewInteractTool, targeting objects by uniqueId or free-space worldPosition coordinates. - Batch Sequences: Compose multi-step interaction flows (pinch-hold, drag, release, wait) in a single Batch call with fail-fast error reporting and structured recovery fields. - Multiplayer Session Support: Join Connected Lenses sessions by triggering the in-Lens Multiplayer button once per preview window before verifying synced state. - Use Case: Verify a Spectacles UI flow by pinching a path option, waiting for a slider to appear, dragging the slider knob, then tapping the revealed launch button, checking handState and error reasons at each step. ## Quick Start Use the preview interaction skill to pinch the launch button in the current Lens Studio preview and verify its state changed.

Frequently Asked Questions about specs-preview-interaction

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I trigger a button in the Lens Studio preview programmatically?

Call PreviewInteractTool with action Pinch or Poke and the target's uniqueId, discovered via QueryRuntimeSceneTool with hasComponents Interactable. Use Pinch for pickup-style interactables and Poke for UI elements whose targetingMode includes Poke.

How do I drag and throw an object in a Spectacles Lens preview?

Use the Drag action with the object's uniqueId and a destination worldPosition. Set releaseMidDrag to true to release the pinch mid-motion so the object inherits the hand's velocity, simulating a throw.

Does PreviewInteractTool work with mobile or camera Lens Studio projects?

No. PreviewInteractTool targets Specs previews only and requires the Spectacles Interaction Kit, since the hand actions are SIK-driven. It has no equivalent on mobile or camera previews.

Why does my interaction fail with not_found or interactor_busy errors?

A not_found error means the uniqueId is stale, so re-run discovery since UIDs change after preview resets. An interactor_busy error means the hand is holding an object; check handState, release the held object, or use the other hand.

Why is my multiplayer Lens not syncing between preview windows?

Connected Lenses only sync after every preview window joins the session. Trigger the in-Lens Multiplayer button with Pinch or Poke once per window, passing previewName so each call lands in the correct window, then re-discover objects.