OptionalautorunOptionalbatchBatch size for pulling jobs (default: 10, max: 1000). Higher = fewer round-trips
OptionalconcurrencyOptionalconnectionConnection options - if omitted, connects to localhost:6789
OptionaldataSQLite database path for embedded mode (overrides DATA_PATH env var)
OptionaldrainDelay in ms between polls when queue is drained (default: 50)
OptionalembeddedUse embedded mode (in-process SQLite) instead of TCP
OptionalheartbeatHeartbeat interval in ms (default: 10000). Set to 0 to disable.
OptionallimiterRate limiter for controlling job processing rate (BullMQ v5 compatible). When set, limits the number of jobs processed within the duration window.
OptionallockLock duration in ms (default: 30000). Passed to server on pull; also used by stall detection.
OptionalmaxMax stalls before moving to failed (default: 1). Passed to stall config when using embedded mode.
OptionalpollLong poll timeout in ms when queue is empty (default: 0 = no wait, max: 30000)
OptionalprefixNamespace prefix prepended to the queue name on the server.
Must match the prefixKey used by the producing Queue for the worker
to consume the same namespaced queue. See QueueOptions.prefixKey.
OptionalremoveRemove jobs on complete — applied as default for all jobs processed by this worker
OptionalremoveRemove jobs on fail — applied as default for all jobs processed by this worker
OptionalskipSkip lock renewal via heartbeat (default: false)
OptionalskipSkip stalled job check — disables stalled event subscription (default: false)
OptionaluseUse lock-based job ownership (BullMQ-style). When enabled, each pulled job gets a lock that must be renewed via heartbeat. Disable for high-throughput scenarios where stall detection is sufficient. Default: true
Worker options