This week's tip of the week is Pueue.
Have you ever started a long-running command, then realized your terminal is now its permanent babysitter?
Maybe it’s a build, a large download, video processing, a test suite, or some job running in your homelab. You can open another terminal, throw it into tmux, or tack on &, but then you’re managing processes instead of getting work done.
Pueue gives you a proper task queue for shell commands.
Add a few jobs:
pueue add "npm run build"
pueue add "npm test"
pueue add "yt-dlp https://example.com/video"By default, Pueue runs them one at a time. You can see everything in the queue with:
pueue statusNeed to inspect the output from a task?
pueue log 0You can also pause the queue, resume it later, or restart a failed task:
pueue pause
pueue start
pueue restart 0If your machine can handle more work, let multiple tasks run at once:
pueue parallel 3Pueue runs through a background daemon. The queue isn’t tied to the terminal where you created it, so you can close the window or end an SSH session without losing your jobs. Your task history and logs are persisted too.
Pueue works on macOS, Linux, and Windows. On macOS, install it with Homebrew:
brew install pueue
brew services start pueueYou can also install it using your system package manager, download a prebuilt binary, or use Cargo:
cargo install --locked pueue
pueued -dIt’s not trying to replace cron, CI, or a heavy-duty job scheduler. It’s for those commands you start manually but don’t want to babysit manually. Give Pueue a try and let me know what you think!
That's it! Short and sweet. Until the next one!

