---
name: "bullmq-redis-typescript-job-queue"
description: "Orchestrate resilient, distributed task queues and repeatable jobs in Node.js and TypeScript."
metadata:
  author: "Taskforce"
  version: "1.0.0"
  runtime_compatibility:
    - "codex"
    - "claude-code"
    - "cursor"
    - "windsurf"
triggers:
  - "create bullmq worker"
  - "bullmq flowproducer parent child"
  - "schedule repeatable job bullmq"
permissions:
  fs_read: true
  fs_write: "workspace"
  shell_exec: false
  net_access: false
---

# BullMQ Redis Job & Message Queue for TypeScript

Builds background job pipelines with BullMQ: delayed jobs, parent-child job hierarchies (FlowProducer), rate-limiting, repeatable cron jobs, concurrency controls, and dead-letter handling.

## When to Invoke
Invoke this skill whenever you need to:
- create bullmq worker
- bullmq flowproducer parent child
- schedule repeatable job bullmq

## Execution SOP & Rules
1. Instantiate Queue: const queue = new Queue('emails', { connection: redisOptions }).
2. Add job with options: await queue.add('sendWelcome', { email }, { attempts: 3, backoff: { type: 'exponential', delay: 1000 } }).
3. Process with Worker: const worker = new Worker('emails', async job => { ... }, { concurrency: 10 }).
4. Attach event listeners for 'completed', 'failed', and register graceful process SIGTERM listeners.

## Verification Checklist
- Run local linting, syntax validation, and type-checks before reporting completion.
- Ensure all created or modified files adhere to workspace boundaries and avoid uncommitted secrets.
- Verify tests or build commands exit cleanly with return code 0.
