@helix3/helix-cli 0.1.15-helix3.245 → 0.1.15-helix3.248

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -51,6 +51,7 @@ The token is stored in `~/.helix/credentials.json` (mode `600`). It's sent as
51
51
  | `helix device create <dir> --id <slug> --title <t> --model <mesh.glb> --template standing-desk\|clock\|television` | Scaffold a GLB-backed `helix.device/1` definition, including the interactive TV/media-player template. There is intentionally no website Device editor. |
52
52
  | `helix device validate [dir] [--json]` | Validate the definition, GLB bytes and named-node bindings, typed state/controls, capabilities, and Home+World compatibility. |
53
53
  | `helix device test [dir] [--mode single\|multiplayer\|both] [--json]` | Exercise every interaction, persistence remount, and deterministic one-/two-client authority convergence. |
54
+ | `helix world scene-elements compile <input> --output <scene>` | Compile typed Scene v2 authoring, including exact Continuum Device pins, instances, and locally validated typed links. See [`examples/scene-elements-devices.json`](examples/scene-elements-devices.json). |
54
55
  | `helix preview-video <slug> <youtube-url>` | Set or clear a published world's YouTube preview. |
55
56
  | `helix thumbnail set <slug> <file>` | Upload a thumbnail or preview image through the CLI-owned media path. |
56
57
  | `helix assets search\|get\|versions\|track\|install\|update` | Search the typed Vault with explainable ranking; inspect/manage annotations and immutable versions; install by durable ID with verified SHA-256 receipts. Material installs default to lean runtime KTX2 maps; use `--material-renditions source` for source PNGs or `all` for both families. |
package/dist/index.js CHANGED
@@ -4682,7 +4682,7 @@ const sceneElements = world
4682
4682
  .description('Compile nested typed architectural authoring data into native Scene v2');
4683
4683
  sceneElements
4684
4684
  .command('compile')
4685
- .description('Compile a helix.scene-elements/1 or /2 document into a sealed, zero-download Scene v2 document')
4685
+ .description('Compile a helix.scene-elements/1 or /2 document, including exact pinned Devices, into sealed Scene v2')
4686
4686
  .argument('<input>', 'semantic scene-elements JSON file')
4687
4687
  .requiredOption('-o, --output <file>', 'output .helix-scene.json file')
4688
4688
  .action(async (input, opts) => {
@@ -4706,6 +4706,11 @@ sceneElements
4706
4706
  scene: { id: scene.id, revision: scene.revision, integritySha256: scene.integrity.sha256 },
4707
4707
  primitives: scene.nodes.filter((node) => node.components?.some((component) => component.type === 'render.primitive')).length,
4708
4708
  resources: scene.resources.length,
4709
+ devices: {
4710
+ definitions: scene.itemDefinitions.filter((definition) => 'packageId' in definition).length,
4711
+ instances: scene.itemInstances.length,
4712
+ links: scene.deviceLinks?.length ?? 0,
4713
+ },
4709
4714
  bundleFiles: bundleFiles.map((asset) => asset.uri),
4710
4715
  }, null, 2));
4711
4716
  }