[ Documentation ]
rnx debug

rnx debug

rnx debug

Toggle engine debug channels, capture snapshots, and diff internal state from the terminal while targeting any connected sim.

terminal
rnx debug <subcommand> [args]

Options

flagdescription
--sim <sim>target a specific connected sim
--port <number>bridge port (defaults to 7668)
--jsonemit compact JSON for machine consumption
--prettyemit formatted JSON for human inspection

Examples

terminal
rnx debug enable sheets,portals
rnx debug snapshot before
rnx debug diff before after
rnx debug recent portals 20

What Debug Owns

debug is for engine state, not user-facing UI summaries. It owns:

  • +
    channel toggles like sheets, portals, touch, and render
  • +
    snapshots and diffs
  • +
    recent event history
  • +
    on-demand inspectors for complex runtime structures

If you want to know what is on screen, use describe or get. If you want to know what the engine thinks just happened, use debug.

Subcommands

Run rnx debug <verb> --help for the flags and examples of any subcommand.

state

subcommanddescription
state <kind> [args]runtime dumps (shell, worker, keyboard, hit, gesture, ownership, …)

js

subcommanddescription
js <expression>evaluate JavaScript in the engine realm

profiling

subcommanddescription
image-audit [--min <ratio>] [--all] [--json]source pixels per device pixel, per drawn image
get memorylive object counts + heap sampler
sample-color <x> <y> [w] [h]average canvas color over a rect
trace shell [on [limit]|off|status|clear|<recentLimit>]per-tick animation + shell frame trace

snapshot

subcommanddescription
clear-snapshots [label]discard captured snapshots
diff <labelA> <labelB>compare two snapshots
snapshot [label]capture tree snapshot for later diff
snapshotslist captured snapshot labels

inspectors

subcommanddescription
find sheetslist engine-internal nodes by category

events

subcommanddescription
clear-eventsreset the debug event ring buffer
recentlast N debug events
record [on|off]toggle the debug event ring buffer