Test environment settings and component schemas with iwsdk CLI against poke.
This skill appears to be primarily prompt/documentation for testing an environment system, with no declared secrets or remote endpoints; under the provided 'prompt-only' metadata, overall risk is low. Caution is still warranted because the README contains instructions to install dependencies, start a dev server, and invoke a local CLI, which would involve local code execution and data access if actually executed by an agent.
The material and metadata indicate no required secrets or environment variables. No account, token, or other sensitive credential is requested, so credential exposure risk appears low.
No remote endpoints are declared, and the material does not explicitly describe sending user data to third-party services. Based on the available facts, there is no direct stated data egress target.
The README explicitly includes commands such as `npm run fresh:install`, `npm run dev`, `npx iwsdk ...`, and `sleep`. If a host actually follows these instructions, it would install dependencies, start local processes, and run a CLI. This is normal local execution capability for such tools and warrants caution, but not a high-risk rating by itself.
The documentation instructs running inside the `$IWSDK_REPO_ROOT/examples/poke` workspace and performing installation, reloads, log reads, and ECS modification tests. This implies access to and possible modification of that local workspace data, but there is no clear evidence of system-wide over-privileged access beyond the stated purpose.
The source points to an open-source GitHub repository, which is a positive factor because the code is auditable. However, the repository has 0 stars, no declared license, unknown maintenance status, and the material relies on `npx iwsdk`/`npm` dependency installation, so normal supply-chain uncertainty remains and caution is appropriate.
Copy the install command and let the AI configure it · recommended for beginners
Please install the "test-environment" skill from askskill: 1. Download https://raw.githubusercontent.com/facebook/immersive-web-sdk/main/.claude/skills/test-environment/SKILL.md 2. Save it as ~/.claude/skills/test-environment/SKILL.md 3. Reload skills and tell me it's ready
Use the iwsdk CLI to test test-environment against the poke example, focusing on whether default lighting loads correctly. Output the test steps, results, and any anomalies.
A default lighting test report with execution steps, pass status, and detected issues.
Run test-environment against the poke example and verify whether DomeGradient and IBLGradient are applied correctly. Summarize each component’s behavior and differences.
A gradient environment component check showing whether both components work and how they differ.
Use the iwsdk CLI to run a full validation of test-environment against the poke example, checking whether the component schemas match expectations and listing mismatched fields with fix suggestions.
A schema validation result including field-level errors, root causes, and recommended fixes.
Run 6 test suites covering default lighting verification, system registration, component registration, scene hierarchy, ECS data modification, and stability.
Configuration:
$IWSDK_REPO_ROOT/examples/pokeTool calls: every tool call is npx iwsdk <subcommand> [--input-json '<JSON>'] [--timeout <ms>], run from inside the example workspace (cwd $EXAMPLE_DIR). The CLI auto-discovers the IWSDK app root from cwd, so no path tricks are required. Run npx iwsdk mcp inspect from the example to discover available tools and their CLI subcommands.
<JSON> is a JSON object string. Omit --input-json if no arguments are needed.{ok, workspaceRoot, operation, result}. Parse it to check assertions.--timeout 20000 for operations that may take longer (reload, xr enter, screenshot).IMPORTANT: Run each Bash command one at a time. Parse the JSON output and verify assertions before moving to the next command. Do NOT chain multiple CLI commands together.
IMPORTANT: When the instructions say "wait N seconds", use sleep N as a separate Bash command.
IMPORTANT: Boolean values in ecs set-component must be actual JSON booleans (value: true), NOT strings (value: "true"). Strings silently fail to coerce.
cd $IWSDK_REPO_ROOT/examples/poke && npm run fresh:install
Wait for this to complete before proceeding.
Start the dev server as a background task using the Bash tool's run_in_background: true parameter:
cd $IWSDK_REPO_ROOT/examples/poke && npm run dev
IMPORTANT: This command MUST be run with run_in_background: true on the Bash tool — do NOT append & to the command itself.
Once the background task is launched, poll the output for Vite's ready message (up to 60s). You can also run npx iwsdk dev status from the example directory until state.running becomes true. You do not need to extract or manage the port yourself; subsequent commands resolve the active runtime through the CLI automatically.
If the server fails to start within 60 seconds, report FAIL for all suites and skip to Step 5.
npx iwsdk ecs systems 2>/dev/null
This must return JSON with a list of systems. If it fails:
Run these commands in order:
npx iwsdk browser reload --timeout 20000 2>/dev/null
Then: sleep 3
npx iwsdk xr enter --timeout 20000 2>/dev/null
Then: sleep 2
npx iwsdk browser logs --input-json '{"count":20,"level":["error","warn"]}' 2>/dev/null
Assert: No error-level logs.
Test 1.1: Find LevelRoot Dynamically
npx iwsdk ecs find --input-json '{"withComponents":["LevelRoot"]}' 2>/dev/null
Assert: Exactly 1 entity. Save its entityIndex as <root>.
Test 1.2: LevelRoot Has Environment Components
npx iwsdk ecs query --input-json '{"entityIndex":<root>,"components":["DomeGradient","IBLGradient"]}' 2>/dev/null
Assert: Both components present with default values:
DomeGradient defaults:
| Field | Expected Value |
|---|---|
sky | [0.2423, 0.6172, 0.8308, 1.0] (soft blue) |
equator | [0.6584, 0.7084, 0.7913, 1.0] (gray-blue) |
ground | [0.807, 0.7758, 0.7454, 1.0] (warm beige) |
intensity | 1.0 |
_needsUpdate | false (already processed) |
IBLGradient defaults:
| Field | Expected Value |
|---|---|
sky | [0.6902, 0.749, 0.7843, 1.0] (soft blue-gray — different from DomeGradient!) |
equator | [0.6584, 0.7084, 0.7913, 1.0] (same as DomeGradient) |
…
Plan IWSDK features, architecture, and code patterns with best-practice guidance.
Test XR session lifecycle and mode transitions to verify behavior and debug state issues.
Build, debug, and refine IWSDK PanelUI panels more efficiently.
Test multiple grab interaction modes with the iwsdk CLI.
Test XR interactions, panels, and audio behavior with the iwsdk CLI.
Find and click XR target objects to verify UI interactions work correctly.
Test level hierarchy, tags, and lighting setup with the iwsdk CLI.
Test UI system behavior and compatibility against the poke example with iwsdk CLI.
Test ECS core behaviors and example runtime via the iwsdk CLI.
Test slide, snap turn, teleport, and jump locomotion with iwsdk CLI.
Test Havok physics behaviors with the iwsdk CLI against example scenes.
Debug WebXR real-time behavior frame by frame with pause, snapshots, and diffs.