Pueue is a task queue manager for shell commands, built as a daemon and command-line interface. It accepts shell commands into a managed queue and executes them with configurable parallel execution limits, supporting both global and per-group concurrency controls. The daemon persists its entire state—task queue, logs, and configuration—to disk, ensuring survival across crashes and system restarts.
The project distinguishes itself through a dependency graph that lets tasks declare prerequisites, forming a directed acyclic graph that controls execution order. Tasks can be organized into named groups, each with independent parallelism limits and pause/resume controls, preventing resource contention between different workloads. Remote management is supported via a daemon-client TCP protocol with TLS encryption and shared-secret authentication, or through SSH tunneling for secure access without network exposure. An interactive fuzzy-finder interface provides keyboard-driven browsing, filtering, and control of tasks with live log viewing.
Beyond core queuing and scheduling, Pueue offers delayed and time-based execution, batch operations on multiple tasks, and the ability to stash tasks for later processing. Users can edit queued tasks, reorder the queue, restart failed or completed tasks, and send input to running processes. Completion callbacks trigger user-defined shell commands with task metadata when processes finish. The CLI outputs task status and logs as structured JSON for integration with external tools, and generates shell completions for Bash, Zsh, and Fish.