A terminal dashboard for BullMQ job queues. It works like bull-board, but runs in your shell. Point it at a Redis instance, then browse queues, jobs and job details, or retry, promote, pause and drain them, without opening a browser.
$ npm install -g @angelkar/bull-cli
Requires Node.js >= 20 and a reachable Redis with one or more BullMQ queues.
bull-cli v0.1.0[Esc/h] Back [r] Refresh [q] Quit
[↑/↓] Move [1-5] Status [Enter] Detail [/] Filter
Queues > emailQ
[Delayed](0) | Waiting (12) | Active (2) | Failed (1) | Completed (4)ID Name State Attempts CreatedAt❯ 12 send-email waiting 0 2026-07-26 10:41
13 send-email waiting 0 2026-07-26 10:41
14 welcome-digest waiting 0 2026-07-26 10:42
Page 1 of 2redis://localhost:6379
features
Zero config. It finds queues by running SCAN for bull:*:meta keys.
Delayed, waiting, active, failed and completed jobs, with pagination and search.
Job detail: data, return value, stacktrace and options. Copy the data JSON to the clipboard.
Retry, delete, promote and duplicate jobs. Pause, resume and drain queues.
Refreshes every 3s. Runs in the alternate screen buffer, so your scrollback stays clean.
Optional. The CLI reads ./bull-cli.json, then ~/.config/bull-cli/config.json (or the same path under $XDG_CONFIG_HOME). Both files may use JSONC, and the project file overrides the user file key by key.
{
// poll interval, ms (>= 250)
"refreshIntervalMs": 3000,
// per-refresh timeout, ms (>= 250); raise for remote/tunnelled Redis
"refreshTimeoutMs": 5000,
}
hack on it
$ git clone https://github.com/ang3lkar/bull-cli.git && cd bull-cli
$ npm install
$ npm run redis:up # redis:7-alpine via docker compose$ npm run seed # demo queues and jobs$ npm run dev