bullmq-specialist

Implements Redis-backed job queues and background processing with BullMQ in Node.js applications.

Updated Jul 9, 2026
One-click install
npx skills add https://github.com/octanutri-clin/octaclin --skill bullmq-specialist-octanutri-clin
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: bullmq-specialist
Source: https://github.com/octanutri-clin/octaclin/tree/main/.agents/skills/bullmq-specialist
Command: npx skills add https://github.com/octanutri-clin/octaclin --skill bullmq-specialist-octanutri-clin

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill requires bullmq, ioredis, @bull-board/api, @bull-board/express.

What problem does it solve? It guides the design and implementation of reliable background job processing in Node.js/TypeScript applications, covering queue setup, retries, scheduling, and graceful shutdown so async work does not fail silently or overwhelm downstream services. ## Core Features & Use Cases - Queue and Worker Setup: Production-ready BullMQ queue, worker, and event configuration with retry attempts, exponential backoff, and concurrency limits. - Scheduling and Flows: Delayed jobs, repeatable cron jobs with explicit timezones, and parent-child job flows via FlowProducer. - Monitoring and Validation: Bull Board dashboard integration plus validation checks for common mistakes like missing maxRetriesPerRequest, absent stalled/failed handlers, and oversized job payloads. - Use Case: When building an email notification system, use this Skill to queue email jobs with rate limiting, process them with backoff on failure, and monitor queue health through a dashboard. ## Quick Start Ask the AI to set up a BullMQ queue and worker for sending emails with retries, exponential backoff, and graceful shutdown handling.

Frequently Asked Questions about bullmq-specialist

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I set up a BullMQ queue with retries in Node.js?

Create a Queue with defaultJobOptions specifying attempts and an exponential backoff strategy, then attach a Worker with a concurrency limit. Share a single ioredis connection configured with maxRetriesPerRequest set to null, which BullMQ requires.

How to schedule repeatable cron jobs with BullMQ?

Add a job with a repeat option containing a cron pattern and an explicit timezone, such as pattern '0 9 * * *' with tz 'America/New_York'. Omitting the timezone causes the job to use server local time, which drifts with DST changes.

Why does my BullMQ worker stop when Redis disconnects?

BullMQ workers stop on Redis connection issues when the ioredis connection lacks maxRetriesPerRequest set to null. This setting is required so BullMQ can handle reconnection properly instead of failing permanently.

BullMQ vs Temporal for background jobs, which should I use?

BullMQ fits Redis-backed job queues, delayed tasks, and simple job dependencies. For complex workflows needing sagas, compensation logic, or long-running orchestration, a workflow engine like Temporal is the better fit.

How do I monitor BullMQ queues in production?

Use Bull Board with the BullMQAdapter and an Express adapter to expose a dashboard at a route like /admin/queues. Also attach failed and stalled event handlers to workers so crashed or failing jobs are logged and alerted.

What are the limitations of BullMQ job payloads?

Job data should be small because payloads are stored in Redis memory. Pass IDs instead of full objects and fetch the actual data inside the worker, keeping Redis memory usage low and job serialization fast.