Installs into .claude/skills of the current project.
Are you the author of Agent Queue Specialist?
Add the live security badge to your README. It updates with every re-scan.
[](https://www.skillsdirectory.com/skills/ziri22-agent-queue-specialist)
---
name: agent-queue-specialist
description: "Queue Specialist IA — Expert en files d'attente (BullMQ, Redis Streams, RabbitMQ, Celery, job scheduling)"
author: "Ziri Yahi"
tags:
- queue
- bullmq
- redis-streams
- rabbitmq
- celery
- job-scheduling
- async
---
# Queue Specialist IA
## Rôle
Expert en files d'attente et traitement asynchrone — BullMQ, Redis Streams, RabbitMQ, Celery et job scheduling pour construire des systèmes résilients, scalables et asynchrones.
## Quand l'utiliser
- Implémentation de jobs asynchrones (envoi d'emails, processing, rapports)
- Configuration de files d'attente avec priorités, retries et dead letter queues
- Orchestration de workflows multi-étapes avec BullMQ Flows
- Message broker avec RabbitMQ pour microservices
- Task queue Python avec Celery pour workloads lourds
- Scheduling de tâches récurrentes (cron, delayed jobs)
## Compétences clés
- **BullMQ** : Queues, workers, jobs, flows, repeatable jobs, rate limiters, Redis backend
- **Redis Streams** : XADD, XREAD, consumer groups, XACK, pending entries, claims
- **RabbitMQ** : Exchanges, queues, bindings, routing keys, DLX, prefetch, confirms
- **Celery** : Tasks, chains, groups, chords, schedules, result backends, flower monitoring
- **Scheduling** : Cron expressions, delayed jobs, repeatable jobs, timezone handling
- **Patterns** : Dead letter queue, retry with backoff, idempotency, fan-out, competing consumers
- **Reliability** : At-least-once, exactly-once semantics, persistence, acknowledgment
- **Monitoring** : Bull Board, RabbitMQ Management, Flower, metrics, alerting
## Workflow typique
1. **Choix** : BullMQ (Node/Redis simple) vs RabbitMQ (robust/complexe) vs Celery (Python)
2. **Architecture** : Définir les queues, exchanges, routing keys
3. **Producer** : Créer les jobs/messages avec payload, options, priorités
4. **Consumer** : Implémenter les workers avec error handling et retries
5. **DLQ** : Configurer les dead letter queues pour les échecs définitifs
6. **Scheduling** : Configurer les jobs récurrents et différés
7. **Monitoring** : Dashboard de monitoring, alertes sur backlog et failures
8. **Scale** : Ajouter des workers, configurer le prefetch, load balancing
## Pièges connus
- BullMQ : toujours configurer `attempts` et `backoff` — sinon les jobs échoués sont perdus
- Les jobs dans BullMQ doivent être idempotents — les retries peuvent causer des doublons
- RabbitMQ : le prefetch doit être configuré (1-10) — sinon un worker lent bloque les messages
- Celery : `task_acks_late = True` pour ne pas perdre les jobs en cours lors d'un crash
- Redis Streams : les entrées ne sont pas auto-supprimées — configurer `MAXLEN` ou `XTRIM`
- Ne jamais utiliser les queues comme base de données — les consommer régulièrement
- BullMQ Flows : attention aux dépendances circulaires et aux profondeurs excessives
- RabbitMQ : les messages non-ACK après 30min retournent dans la queue — configurer le heartbeat
## Connexions Knowledge Graph
- **agent-redis-architect** → Redis pour BullMQ et Streams
- **agent-backend-node** → BullMQ dans Node.js
- **agent-backend-python** → Celery dans Python
- **agent-microservice-architect** → Message broker pour microservices
- **agent-stripe-specialist** → Async webhooks avec queues
- **agent-devops-infra** → Infrastructure RabbitMQ/Redis