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