TL;DR — Quick Summary
pueue manages long-running commands in a task queue. Queue, pause, resume, and parallelize shell commands — even after disconnecting from your terminal.
pueue lets you queue, parallelize, and manage long-running commands. Add tasks, close your terminal, check back later — everything keeps running.
Installation
# macOS
brew install pueue
# Arch Linux
sudo pacman -S pueue
# Cargo
cargo install pueue
# Start daemon
pueued -d
Usage
# Add tasks to queue
pueue add 'npm run build'
pueue add 'cargo test'
pueue add 'python train.py --epochs 100'
# Check status
pueue status
# View task output
pueue log # All completed tasks
pueue log 0 # Specific task by ID
pueue follow 0 # Stream live output
# Control tasks
pueue pause # Pause all
pueue pause 0 # Pause specific task
pueue start # Resume all
pueue start 0 # Resume specific task
pueue kill 0 # Kill specific task
pueue remove 0 # Remove completed task
pueue clean # Remove all finished tasks
# Parallel execution
pueue parallel 3 # Run up to 3 tasks simultaneously
# Groups (separate queues)
pueue group add builds
pueue add --group builds 'make release'
pueue parallel 2 --group builds
# Dependencies
pueue add 'npm install'
pueue add --after 0 'npm run build' # Runs after task 0
# Edit queued task
pueue edit 0 # Opens $EDITOR to modify command
# Stash and enqueue
pueue stash 0 # Hold task, don't run yet
pueue enqueue 0 # Release stashed task
Summary
- pueue queues and manages long-running shell commands
- Tasks survive terminal disconnect (daemon-based)
- Parallel execution groups with configurable concurrency
- Pause, resume, kill, and restart tasks
- Task dependencies, stashing, and live output streaming