Skip to main content

zigflow run

zigflow run

Start Zigflow workflow workers

Synopsis

Start one or more Zigflow workflow workers that connect to Temporal and process workflow executions defined in the provided workflow definitions.

Workflow definitions are loaded from the files specified with --file, from a directory matched with --dir and --glob, or from both sources combined. All definitions are validated before any worker is started.

Workflows that share a task queue (defined by document.taskQueue) are registered on a single shared worker. Each distinct task queue gets its own worker. Multiple definitions targeting the same task queue and sharing a workflowType are rejected before startup.

The process blocks until interrupted and then stops all workers cleanly before closing the Temporal connection.

Use this command to deploy and run your Zigflow workflows in any environment, from local development to production.

zigflow run [flags]

Options

      --cloudevents-config string                         Path to CloudEvents config file
--codec-endpoint string Remote codec server endpoint
--codec-headers stringToString Remote codec server headers (default ***)
--convert-data string Data conversion mode: "", "aes", or "remote"
--converter-key-path string Path to conversion keys to encrypt Temporal data with AES (default "keys.yaml")
-d, --dir string Directory containing workflow files
--env-prefix string Load envvars with this prefix to the workflow (default "ZIGGY")
-f, --file strings Path to workflow file (may be specified multiple times)
--glob string Glob pattern when using --dir (default "*.{yaml,yml,json}")
--graceful-shutdown-timeout duration Maximum time to wait for in-flight work to complete on shutdown. Set to 0 to disable (default 10s)
--health-listen-address string Address of health server (default "0.0.0.0:3000")
-h, --help help for run
--max-concurrent-activity-execution-size int Sets the maximum concurrent activity executions this worker can have.
--max-concurrent-workflow-task-execution-size int Sets the maximum concurrent workflow task executions this worker can have.
--metrics-listen-address string Address of Prometheus metrics server (default "0.0.0.0:9090")
--metrics-prefix string Prefix for metrics
--task-queue-activities-per-second float Sets the rate limiting on number of activities that can be executed per second.
-H, --temporal-address string Address of the Temporal server (default "localhost:7233")
--temporal-api-key string API key for Temporal authentication
-n, --temporal-namespace string Temporal namespace to use (default "default")
--temporal-server-name string Override the TLS server name (SNI) used for certificate validation. Required when the endpoint address does not match the certificate hostname, for example AWS PrivateLink.
--temporal-tls Enable TLS Temporal connection
--tls-client-cert-path string Path to mTLS client cert, usually ending in .pem
--tls-client-key-path string Path to mTLS client key, usually ending in .key
--validate Run workflow validation (default true)
--watch Reload workers automatically when workflow files change (for development use)
--watch-debounce duration Debounce duration for file change events when using --watch (default 300ms)

Options inherited from parent commands

      --disable-telemetry   Disables all anonymous usage reporting. No telemetry data will be sent.
-l, --log-level string Set log level (default "info")

SEE ALSO

  • zigflow - Define durable workflows in YAML, powered by Temporal
Auto generated by spf13/cobra on 12-Apr-2026