Application startup arguments

The Runtime accepts the following command-line arguments. Run the runtime with --help for an at-a-runtime listing, or --version for just the build stamp.

Project loading

Short Long Effect
-p --project <file> Load a specific project file on startup. Accepts a .prj or an encrypted .prjp. Default: default.prj.
-d --key <key> Decryption key for an encrypted .prjp project.

Autotest

Short Long Effect
-a --autotest <seconds> Run an autotest for <seconds> seconds, then exit with the autotest's result code.
-q --quick-exit Allow autotests to terminate the process quickly when done, skipping graceful shutdown overhead.

Licensing

Long Effect
--licenserequired Refuse to run without a valid licence. Use in production to avoid silent fallback to trial mode.
--license-file <path> Override the path Composer looks at for license.lic. Useful when running multiple isolated instances on one host with different licences.

Logging

Short Long Effect
-l --logpath <dir> Override the directory log files are written into.
-w --customlog <name> Use a custom base name for the log files (the day-stamped suffix still applies).
--nodisklog Disable disk logging entirely. Useful for short-lived containers shipping logs only to stdout.
--consoleonlyerrors Limit console output to error-severity entries only.
-v --verbose Verbose console logging — useful during diagnostics.

FFmpeg

Long Effect
--noffmpegversioncheck Skip the FFmpeg version check at startup. Use when running with a newer or patched FFmpeg build.

Configuration overrides

Long Effect
--settings-file <path> Override the path Composer looks at for settings.xml.

Network ports

Each of these overrides the corresponding port from settings.xml. Useful when running multiple Runtime instances on one host or in CI.

Long Effect
--http-api-port <port> Override the HTTP API port (default 44433).
--websocket-port <port> Override the WebSocket server port.
--prometheus-port <port> Override the Prometheus metrics-endpoint port.
--runtime-api-port <port> Port for the runtime-lifecycle API (default 9101, or the COMPOSER_RUNTIME_API_PORT environment variable when set).

Health probes

The Runtime can expose an unauthenticated, license-exempt HTTP listener for container and orchestrator health checks, on its own port — separate from the HTTP API and the Runtime API so a probe reflects process health only, never a licence tier or whether a heavier API happens to be enabled.

Long Effect
--health-port <port> Enable the health/probe endpoint on <port> (or set the COMPOSER_HEALTH_PORT environment variable). Disabled if neither is set.

Probe paths (all unauthenticated GET; 200 = pass, 503 = not yet / no longer — the orchestrator backs off):

Path Probe 200 when
/startup (/startupz) startup CUDA + engine init are done and the main loop has been entered
/health (/livez) liveness the main loop has ticked within the last 30 s (not wedged)
/ready (/readyz) readiness startup is complete and state is Idle or Running (not Loading / Stopping)

Each response body is JSON carrying probe, status, state, startupComplete, and lastTickAgeMs for diagnostics. Readiness treats Idle as ready, so an idle pod stays in rotation to receive a /runtime/load. Use /startup as a Kubernetes startupProbe to gate liveness (/health) and readiness (/ready) during boot.

Networking

Long Effect
--force-localhost Force every configured host endpoint (WebAPI, WebSocket, Loki, Prometheus, Runtime API) to bind to localhost only. Useful for CI / single-host testing where you don't want the runtime advertising on the LAN.

Shutdown

Long Effect
--shutdown-deadline-seconds <seconds> Maximum time allowed for a graceful shutdown before the process force-exits with code 75. Once shutdown begins (a SIGTERM/SIGINT signal on Linux, Ctrl+C, or a Runtime-API exit), targets and inputs are stopped cleanly within this window; if the deadline is exceeded the runtime exits immediately rather than hanging. Set your container orchestrator's stop grace period longer than this deadline — Docker's own default grace is 10 s against this 25 s default, and a grace period shorter than the deadline means SIGKILL (exit 137) lands part-way through teardown. Default: 25 (or the COMPOSER_SHUTDOWN_DEADLINE_SECONDS environment variable when set; minimum 3).

Diagnostics

Long Effect
--remotedebug Wait for a remote debugger to attach before continuing startup.
--no-mutex Skip the single-instance mutex check, allowing multiple Runtime processes on one host (for parallel testing).
--help Print the full argument list and exit.
--version Print the build stamp and exit.