CLI & AI toolsCommand reference
helix gesture
Gesture (pose-DSL) tools — measure what a clip does to the body without a browser
CLI version 0.1.27-helix3.551. Run
helix gesture --help for the text your installed build prints.helix gesture
Gesture (pose-DSL) tools — measure what a clip does to the body without a browser
helix gesture <command>helix gesture inspect
Compile a gesture clip and report where it puts the body: landmark readback, motion over time, and what each keyed axis does at the posed chain
helix gesture inspect [options] <clip>| Argument | Required | Description |
|---|---|---|
clip | yes | gesture clip JSON file (or - for stdin) |
| Option | Description |
|---|---|
-C, --world <dir> | the world project whose installed humanoid-character to run (must be npm-installed + helix install'd) (default ".") |
--t <times> | comma-separated readback times in seconds, or percentages of duration (e.g. 0.35,90%) |
--motion | report what the clip DOES over time: extent per axis, dominant direction, purity, reversals |
--motion-window <a,b> | restrict --motion to t=a..b — without it the rest→pose→rest travel dominates every number |
--axes | report what a +10° edit to each keyed axis does AT the posed chain (the rest-frame table cannot answer this) |
--bones <names> | comma-separated bones to report (default "clavicle_r,upperarm_r,lowerarm_r,hand_r,head,spine_03") |
--probe <bone> | which bone --axes measures the effect on (default: the last --bones entry that exists) |
--rig <glb> | measure against a custom character GLB instead of the canonical helix-humanoid skeleton |
--attach <glb> | measure a prop attachment with the pose: grip-frame bbox, unit verdict, and where the prop lands at each --t |
--socket <name> | socket to attach to (default: the preset's, then hand_r.grip) |
--preset <name> | held-item category (pistol|rifle|sword|mug|flashlight|torch|phone) contributing default socket + offsets |
--offset <x,y,z> | socket-local position offset in meters — overrides the preset |
--rotation <x,y,z> | socket-local rotation in degrees (XYZ) — overrides the preset |
--json | machine-readable output |
helix gesture shot
Render a gesture clip as a contact sheet (front + side across the clip) so a pose can be judged by eye — always on the default character
helix gesture shot [options] <clip>| Argument | Required | Description |
|---|---|---|
clip | yes | gesture clip JSON file |
| Option | Description |
|---|---|
-C, --world <dir> | the world project whose installed humanoid-character to run (default ".") |
--frames <n> | sample times across the clip, evenly spaced (default "5") |
--at <t> | capture ONE moment instead of a sequence (seconds, or a percentage like 60%) — views go side by side, much larger |
--views <a,b> | up to two of front|back|left|right|three-quarter — the CHARACTER's own left/right (default: front + the side the clip keys; with --at, front + three-quarter) |
--cell-height <px> | pixel height of each grid cell (default 420, or 760 with --at) |
-o, --out <file> | output PNG (default: <clip dir>/<clip>.sheet.png) |
--attach <glb> | render a prop attached while the clip plays (measure with gesture inspect --attach first) |
--socket <name> | socket to attach to (default: the preset's, then hand_r.grip) |
--preset <name> | held-item category (pistol|rifle|sword|mug|flashlight|torch|phone) contributing default socket + offsets |
--offset <x,y,z> | socket-local position offset in meters — overrides the preset |
--rotation <x,y,z> | socket-local rotation in degrees (XYZ) — overrides the preset |
--browser <name> | diagnostic override: bundled | chrome | msedge |
helix gesture axes
Print the bone axis reference — what each Euler axis does per bone group, plus the advisory natural ranges — read live from the world's pinned system
helix gesture axes [options]| Option | Description |
|---|---|
-C, --world <dir> | the world project whose installed humanoid-character to read (default ".") |
--json | machine-readable output |