使用 iwsdk CLI 对关卡层级、标签与默认灯光配置进行测试验证。
该技能材料显示其本质是用于指导运行本地测试命令的 prompt-only 技能,本身未声明需要密钥或固定远程端点。整体风险较低,但文档明确涉及 npm/npx、本地安装与启动开发服务器,使用时仍应注意本地执行与供应链带来的常规风险。
材料中明确标注无需密钥或环境变量,README 也未要求输入 API token、账户凭证或敏感认证信息;未见直接的凭证收集或滥用迹象。
系统检查项声明无远程端点,但 README 包含 `npm run fresh:install`、`npx iwsdk`、启动 dev server 等步骤,这类操作通常会访问 npm/开发相关网络资源;材料未显示将用户数据外发到不明第三方,属常规网络使用需留意。
README 明确指导执行本地 shell/npm/npx 命令,并要求启动后台开发服务器与运行 CLI 子命令;这意味着具备常规本机代码执行与起进程能力,但未见超出其测试用途的异常系统权限请求。
材料表明操作目录集中在 `$IWSDK_REPO_ROOT/examples/poke` 工作区,并会读取日志、检查系统状态、安装依赖和运行测试;这通常涉及对本地项目文件的读写,但未见申请超出项目范围的过度数据访问。
正面因素是其被标记为 open-source 且来源为 GitHub,可一定程度审计;但仓库 star 为 0、许可证未声明、维护状态未知,且 README 依赖 `npm`/`npx` 安装与执行外部包,存在常规供应链不确定性,因此建议保持留意而非判为高风险。
复制安装指令,让 AI 自动完成配置 · 推荐新手
请帮我安装 askskill 上的 "test-level" 技能: 1. 下载 https://raw.githubusercontent.com/facebook/immersive-web-sdk/main/.claude/skills/test-level/SKILL.md 2. 保存为 ~/.claude/skills/test-level/SKILL.md 3. 装好后重载技能,告诉我可以用了
请使用 iwsdk CLI 对 test-level 进行测试,参照 poke 示例,检查 LevelRoot、LevelTag、默认灯光和场景层级是否配置正确,并输出发现的问题。
一份测试结果摘要,说明各项配置是否通过,并列出结构或配置错误。
请把 test-level 与 poke 示例的关卡系统配置做对比,指出 LevelRoot、LevelTag、灯光设置和层级结构上的差异,并给出修复建议。
一份差异对比报告,包含不一致项及对应修改建议。
基于 test-level 的描述,生成一份用于 iwsdk CLI 的关卡系统测试清单,覆盖 LevelRoot、LevelTag、默认灯光和场景层级检查项。
一份可执行的测试清单,帮助开发者逐项验证关卡系统配置。
Run 5 test suites covering LevelRoot, LevelTag membership, default lighting, scene hierarchy, 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.
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 Entity
npx iwsdk ecs find --input-json '{"withComponents":["LevelRoot"]}' 2>/dev/null
Assert: Exactly 1 entity. Save its entityIndex as <root>.
Entity should have name "LevelRoot".
Entity should also have: Transform, LevelTag, DomeGradient, IBLGradient.
Test 1.2: LevelRoot Transform at Identity
npx iwsdk ecs query --input-json '{"entityIndex":<root>,"components":["Transform"]}' 2>/dev/null
Assert:
[0, 0, 0] (approximately)[0, 0, 0, 1][1, 1, 1]The LevelSystem enforces identity transform on the level root every frame.
Test 2.1: All Level Entities Tagged
npx iwsdk ecs find --input-json '{"withComponents":["LevelTag"]}' 2>/dev/null
Assert: Multiple entities — all entities except entity 0 (scene root, which is persistent).
Test 2.2: LevelTag ID Matches
Pick any tagged entity from the results above:
npx iwsdk ecs query --input-json '{"entityIndex":<any-tagged>,"components":["LevelTag"]}' 2>/dev/null
Assert: id = "level:default"
All tagged entities should have the same id value ("level:default" for the initial level).
Test 2.3: Persistent Entities Excluded
…
帮助规划 IWSDK 新功能、系统架构与代码模式,并提供最佳实践建议。
帮助开发者用 iwsdk CLI 测试 XR 交互与面板音频行为是否正常。
用于逐帧调试 WebXR 场景中的物理、动画与实时交互行为。
指导你在 IWSDK 项目中实现深度感知遮挡并排查显示异常问题
使用 iwsdk CLI 测试 Havok 物理系统的重力与刚体行为表现
在 XR 场景中定位并点击目标对象,用于验证按钮与交互元素是否正常工作
使用 iwsdk CLI 针对 poke 示例验证环境系统与组件配置是否正常
使用 iwsdk CLI 对比示例场景,测试滑动、瞬转、传送与跳跃移动系统。
使用 iwsdk CLI 针对 poke 示例测试 UI 系统行为与兼容性。
通过 iwsdk CLI 验证 ECS 核心功能与示例运行状态,辅助快速测试排障。
使用 iwsdk CLI 测试音频示例的加载、播放状态、停止与空间音频功能。
使用 iwsdk CLI 测试抓取系统的多种交互抓取模式