CLI & AI toolsCommand reference
helix publish
Publish a world to HELIX Instant
CLI version 0.1.27-helix3.551. Run
helix publish --help for the text your installed build prints.helix publish
Publish a world to HELIX Instant
helix publish [options] [directory]| Argument | Required | Description |
|---|---|---|
directory | no | bundle directory |
| Option | Description |
|---|---|
--placement-bindings <file> | JSON worldId/placements mapping from normal reservation receipts |
--thumbnail <file> | cover image (png, jpg/jpeg, webp, avif, or gif); otherwise preserve a custom cover, use thumbnail.<ext>, or automatically capture the ready world |
--skip-subpath-check | skip the pre-publish sub-path load check (not recommended: it is the only gate that serves the bundle the way production does) |
--skip-realizability-check | skip the pre-publish server-realizability gate (not recommended: it is what stops you publishing a module world whose banks the server cannot resolve) |
--description <text> | catalog description, max 1000 chars (pass "" to clear). helix.json cannot carry this — the manifest schema forbids unknown fields |
--description-file <path> | read the catalog description from a file |
--allow-exact-engine-pin <reason> | publish a World whose engine systems are pinned to an exact version. Engine systems are ranges ("^0.3"); an exact pin never receives engine fixes. The reason is required and the override is logged to ~/.helix/engine-pin-overrides.jsonl. To ship an engine fix, promote it instead of pinning |
--upload-source | Also upload this project's source so you can edit this world from the HELIX website later. Off by default — your source is not sent unless you pass this. |
--source-dir <path> | project directory to archive for --upload-source (default: the bundle directory's parent, since [directory] points at the BUILT bundle). node_modules, .git, dist and .vite are always excluded, as is anything your .gitignore excludes |