| name | iwsdk-debug |
| description | Debug continuous behavior in WebXR scenes — physics, animations, collisions, game loops, or any real-time interaction that happens too fast for an agent to observe. Uses ECS pause/step/snapshot/diff to freeze time and inspect state frame by frame. |
| argument-hint | [description of behavior to debug] |
Debug Continuous Behavior
Real-time behavior (physics, animations, collisions, game loops) happens too fast for an agent to observe directly. By the time you take a screenshot, the action is over. This skill uses ECS time-control tools to freeze, step, and diff state frame by frame.
User request is in $ARGUMENTS.
Core Workflow
Every debugging session follows this pattern:
- Set up the scenario (position objects, aim controllers, etc.)
ecs_pause — freeze ECS updates right before the interesting moment
ecs_snapshot({ "label": "before" }) — capture state before the action
- Trigger the action (release grip, apply force, start animation, etc.)
ecs_step(count, delta) — advance a few frames at fixed timestep
browser_screenshot — visually verify what happened
ecs_snapshot({ "label": "after" }) — capture state after stepping
ecs_diff({ "from": "before", "to": "after" }) — see exactly what changed
- Repeat steps 5-8, stepping further until the behavior completes