# Agent Queue Specialist

> Queue Specialist IA — Expert en files d'attente (BullMQ, Redis Streams, RabbitMQ, Celery, job scheduling)

- Skill: `ziri22/agent-queue-specialist` (Agent Skill)
- Install (CLI): `npx skillmds add ziri22/agent-queue-specialist`
- Raw SKILL.md: https://api.skillmd.com/api/skills/ziri22/agent-queue-specialist/raw
- Safety review: pending
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: AI & ML
- Author: ziri22 (https://skillmd.com/u/ziri22)
- Updated: 2026-09-08
- Page: https://skillmd.com/skills/ziri22/agent-queue-specialist

---


# 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
