Skip to main content

pmon

A read-only, live terminal monitor for pueue.

View running, queued, paused, completed and failed commands in one auto-refreshing screen. Inspect task groups, elapsed time, dependencies and recent output without changing the programs being monitored.

Install

pip install pueue-pmon

Python 3.11 or newer is required. Platform wheels include the official pueue and pueued 4.0.4 executables, so a separate Homebrew or Cargo installation is not required. Installation does not start a daemon or change an existing queue.

Wheels are provided for macOS ARM64/x86_64, Linux ARM64/x86_64 and Windows x86_64. The macOS ARM64 wheel has been runtime-tested; other platform payloads are checksum-verified but need additional runtime testing on those operating systems.

Quick start

Connect to an existing pueue daemon using its configuration:

pmon --config /path/to/pueue.yml

The screen refreshes every two seconds. Press q or Ctrl+C to exit the monitor; queued and running commands continue normally. Press r to refresh immediately. Connection failures are retried while the last successful snapshot remains visible.

pmon --config /path/to/pueue.yml --group gpu
pmon --config /path/to/pueue.yml --log
pmon --config /path/to/pueue.yml --log 2
pmon --config /path/to/pueue.yml --interval 5
pmon --config /path/to/pueue.yml --once
pmon --config /path/to/pueue.yml --json

--log displays recent output from the first running task; --log ID selects a specific task. Each refresh requests at most 12 recent lines and displays up to six. The monitor does not show task environment variables. Logs contain whatever the monitored command printed.

Pmon reports the state known to pueue. It does not infer application-level progress percentages, require instrumentation, or read application status files.

Connection settings

Save a pmon.toml in the directory where you run the monitor:

[connection]
config = "/path/to/pueue.yml"
# Optional filters:
group = "gpu"
# profile = "local"

Then run pmon. Relative configuration paths are resolved against the TOML file. Use --settings /path/to/pmon.toml to choose another file. Explicit command-line options take precedence. Without settings, pmon checks .pueue/config.yml in the current directory. It never creates a default configuration in the home directory.

The connection configuration is private to the user and is not included in the package. The daemon controls where its queue state, socket and logs are stored.

Included pueue tools

pmon-pueue --version
pmon-pueued --version
pmon-pueue --config /path/to/pueue.yml status

These commands expose the bundled upstream executables without replacing an existing pueue command. Except for help and version information, an explicit --config or PUEUE_CONFIG_PATH is required. The passthrough tools support the upstream features; the pmon monitor itself only performs status/log queries.

Python API

from pmon import Client

client = Client("/path/to/pueue.yml")
for task in client.status(group="gpu").tasks:
    print(task.id, task.status, task.label)

print(client.log(2, lines=10))

Development

./pmon --config /path/to/pueue.yml
mkdir -p .tmp
PYTHONPATH=src python3.13 -B -m unittest discover -s tests -v

The source launcher locates Python 3.11+ or uses PMON_PYTHON when set. It does not install global launchers or change shell configuration. In a source checkout, an existing pueue executable on PATH can be used; platform wheels bundle it.

Build and publishing instructions are in RELEASING.md. Official upstream executables are pinned by SHA-256. Source builds download those files during wheel construction; installing a prebuilt wheel needs no additional download.

License

Pmon is MIT-licensed. Bundled pueue executables retain their upstream MIT/Apache-2.0 licenses; both license texts are included in the distributions.

Metadata

Release files for pueue-pmon 0.1.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for pueue-pmon 0.1.1
File Size Uploaded Provenance Actions
pueue_pmon-0.1.1.tar.gz 24.6 kB Without provenance Details for pueue_pmon-0.1.1.tar.gz

Built distributions (wheels)

Table of built distributions (wheels) for pueue-pmon 0.1.1
File Actions
pueue_pmon-0.1.1-py3-none-win_amd64.whl Python 3 none Windows x86-64 Details for pueue_pmon-0.1.1-py3-none-win_amd64.whl
pueue_pmon-0.1.1-py3-none-manylinux_2_17_x86_64.musllinux_1_2_x86_64.whl Python 3 none Linux glibc 2.17+ x86-64, Linux musl 1.2+ x86-64 Details for pueue_pmon-0.1.1-py3-none-manylinux_2_17_x86_64.musllinux_1_2_x86_64.whl
pueue_pmon-0.1.1-py3-none-manylinux_2_17_aarch64.musllinux_1_2_aarch64.whl Python 3 none Linux glibc 2.17+ ARM64, Linux musl 1.2+ ARM64 Details for pueue_pmon-0.1.1-py3-none-manylinux_2_17_aarch64.musllinux_1_2_aarch64.whl
pueue_pmon-0.1.1-py3-none-macosx_11_0_arm64.whl Python 3 none macOS 11.0+ ARM64 Details for pueue_pmon-0.1.1-py3-none-macosx_11_0_arm64.whl
pueue_pmon-0.1.1-py3-none-macosx_10_12_x86_64.whl Python 3 none macOS 10.12+ x86-64 Details for pueue_pmon-0.1.1-py3-none-macosx_10_12_x86_64.whl

Total release size: 23.3 MB

Release files / pueue_pmon-0.1.1.tar.gz

Download URL pueue_pmon-0.1.1.tar.gz
Size 24.6 kB
Tags Source
SHA-256 checksum
How to use checksums
2ecc5403f744b00e0805b6af1a5e082f16666e624843df87cef9d1c889e942ef
BLAKE2b-256 checksum
How to use checksums
046d360f3998fdb3236e0a72931121bf538f6dc1707107993119bf28142ceb4b
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.13

Release files / pueue_pmon-0.1.1-py3-none-win_amd64.whl

Download URL pueue_pmon-0.1.1-py3-none-win_amd64.whl
Size 5.1 MB
Tags Python 3 Windows x86-64
SHA-256 checksum
How to use checksums
f8781638af9c171afb5f1dc3ebdd29933cb39263069fb34d56cee2e761c923eb
BLAKE2b-256 checksum
How to use checksums
35d3908dc3cb079a83f3920de2fe8c4b646df8a8c772f0778e53841208f5bb19
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.13

Release files / pueue_pmon-0.1.1-py3-none-manylinux_2_17_x86_64.musllinux_1_2_x86_64.whl

Download URL pueue_pmon-0.1.1-py3-none-manylinux_2_17_x86_64.musllinux_1_2_x86_64.whl
Size 4.3 MB
Tags Linux glibc 2.17+ x86-64 Linux musl 1.2+ x86-64 Python 3
SHA-256 checksum
How to use checksums
dca5767dc58642750ba47261879de868c65f3f71153df0510508a9fa5f4049ad
BLAKE2b-256 checksum
How to use checksums
97c5afc66111dbfd36796675c240e411553359f5c29b84e5f631faa529a25ad5
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.13

Release files / pueue_pmon-0.1.1-py3-none-manylinux_2_17_aarch64.musllinux_1_2_aarch64.whl

Download URL pueue_pmon-0.1.1-py3-none-manylinux_2_17_aarch64.musllinux_1_2_aarch64.whl
Size 3.5 MB
Tags Linux glibc 2.17+ ARM64 Linux musl 1.2+ ARM64 Python 3
SHA-256 checksum
How to use checksums
91d7ec19a29ef7a30a66258a7bd26c3adf5d9e9617106dbd5dc14976dbfc955a
BLAKE2b-256 checksum
How to use checksums
42094c25da05f1300ad50726ebb0e3b7ad6957d0f79f668db0ce3ad7375ce196
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.13

Release files / pueue_pmon-0.1.1-py3-none-macosx_11_0_arm64.whl

Download URL pueue_pmon-0.1.1-py3-none-macosx_11_0_arm64.whl
Size 5.0 MB
Tags Python 3 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
f739c913912d755d355106a76b0ee5b5ae88c5f2caf3ff5a85287e1cb4bc3199
BLAKE2b-256 checksum
How to use checksums
6d7c97222b2998256e36bc7e822d6f65a75f3d51afaa1077edc70e988509f6c9
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.13

Release files / pueue_pmon-0.1.1-py3-none-macosx_10_12_x86_64.whl

Download URL pueue_pmon-0.1.1-py3-none-macosx_10_12_x86_64.whl
Size 5.4 MB
Tags Python 3 macOS 10.12+ x86-64
SHA-256 checksum
How to use checksums
42912e92676d57fa8e49209b77789af338dd5626cb7b1bed77a5ac91da9625f7
BLAKE2b-256 checksum
How to use checksums
f4d6cd35fc52491ec6346caa7aebc9d51ed6d7fd33801e993428a6271b64f807
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.13

Security for pueue-pmon 0.1.1

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Release history Release notifications | RSS feed

This release

0.1.1 This release

6 release files No provenance

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page