CLI
The worldjen CLI wraps the Python SDK and REST API for terminal workflows. Use it for automation, runner operations, and quick inspection from CI or an agent.
Install
Install the core package:
pip install worldjenInstall the runner extra on GPU machines that should operate the local runner service:
pip install "worldjen[runner]"Runner service commands require Linux with systemd.
Configure
Most commands use WORLDJEN_API_KEY or --api-key.
export WORLDJEN_API_KEY="wjk_..."
worldjen --versionCommands that return data support --json for machine-readable output.
Runs
worldjen runs create enqueues work on a runner, matching the dashboard create-run flow. It requires IDs from the dashboard or list commands. Reasoning and generated summaries are off by default; add --reasoning to store both.
worldjen runs create \
--name nightly-comparison \
--dimensions subject_consistency,motion_smoothness \
--runner-id RUNNER_ID \
--model-id MODEL_ID \
--reasoningAdd optional runner pipeline kwargs with inline JSON or a .json file:
worldjen runs create \
--name tuned-sampler \
--dimensions subject_consistency \
--runner-id RUNNER_ID \
--model-id MODEL_ID \
--run-instructions ./pipeline-options.jsonRun commands:
| Command | Purpose |
|---|---|
worldjen runs create | Create and enqueue a run |
worldjen runs list [--status STATUS] [--page N] [--limit N] | List runs |
worldjen runs get RUN_ID | Show run metadata and progress |
worldjen runs wait RUN_ID [--poll-interval 2] [--timeout SECONDS] | Poll until terminal |
worldjen runs cancel RUN_ID | Cancel a run |
worldjen runs delete RUN_ID | Delete a run |
worldjen runs logs RUN_ID | Fetch logs |
worldjen runs csv RUN_ID [-o results.csv] | Download CSV |
worldjen runs videos RUN_ID | List generated media |
worldjen runs download-videos RUN_ID [-o ./videos] | Download generated media |
runs wait exits 0 for completed, 1 for failed, 2 for cancelled, and 3 for deleted.
Playground and Rank
Playground and Rank are user-scoped sandbox runs for ad-hoc custom-prompt evaluation.
worldjen playground get
worldjen playground reset
worldjen playground get --kind rank
worldjen playground reset --kind rankDimensions
worldjen dimensions list
worldjen dimensions list --model-type t2v
worldjen dimensions list --model-type t2i --jsonUse this before creating runs from scripts so the script can choose dimensions compatible with the model type.
Models
worldjen models list
worldjen models list-base
worldjen models list-ref
worldjen models create \
--name LTX-2 \
--provider huggingface \
--hf-repo-id Lightricks/LTX-2 \
--type text_to_video
worldjen models delete MODEL_IDFor private Hugging Face repos, pass --hf-token TOKEN or set WORLDJEN_HF_TOKEN.
Runners
Runner commands are split into backend account operations and local machine operations.
Backend operations:
worldjen runner list
worldjen runner create --name gpu-01 --display-name "A100 worker"
worldjen runner delete --runner-id RUNNER_IDLocal operations:
worldjen runner register --token TOKEN --name gpu-01
worldjen runner install --name gpu-01
worldjen runner start --name gpu-01
worldjen runner status --name gpu-01
worldjen runner logs --name gpu-01 -f
worldjen runner stop --name gpu-01
worldjen runner uninstall --name gpu-01Every runner subcommand accepts --name INSTANCE and defaults to default. Instance names must match [a-zA-Z0-9][a-zA-Z0-9_-]{0,63}. Each instance has its own config file, key file, and worldjen-runner@{name} systemd service, so one host can run multiple runners side by side.
worldjen runner create creates the backend runner, registers this machine, installs the local systemd service, and starts it. worldjen runner delete removes the backend runner, stops and uninstalls the local service, and deletes the local config.
Projects and preferences
worldjen projects list
worldjen projects get PROJECT_ID
worldjen projects create --name "Demo project"
worldjen preferences get
worldjen preferences set-notifications true
worldjen preferences set-cache-i2v-images falseAPI keys
worldjen api-keys listCreate and revoke keys in the dashboard.
SDK vs CLI
Use the CLI for shell automation and runner service control. Use the Python SDK when generation and orchestration live inside Python. Use the REST API when you need language-neutral HTTP.