Rich terminal process viewer
Project description
psinfo
A rich terminal process viewer. Search, filter, and watch running processes with colour-coded output.
psinfo is for when you have a specific question — "what's on port 8080", "how much memory is Chrome using across all its helpers", "is nginx running and what's it doing" — and want a clean answer without launching a full process manager or constructing a ps aux | grep | awk pipeline.
Install
pip install psinfo
Or install as an isolated CLI tool with pipx:
pipx install psinfo
Quick Start
psinfo nginx # search by process name
psinfo -u jdoe # all processes owned by a user
psinfo -p 8080 # process listening on a port
psinfo -P 1234 # single process by PID
Flags
| Flag | Short | Description |
|---|---|---|
name |
Search by process name or command | |
-u, --user USERNAME |
-u |
Filter by username |
-p, --port PORT |
-p |
Find process listening on port |
-P, --pid PID |
-P |
Show process by PID |
-w, --watch [N] |
-w |
Live refresh every N seconds (default: 2) |
-s, --sort cpu|mem |
-s |
Sort order (default: cpu) |
-t, --tree |
-t |
Group results by process tree hierarchy |
-T, --top N |
-T |
Show only the top N results |
-e, --expand |
-e |
Expand command line arguments to full width |
Examples
psinfo nginx # search by process name
psinfo -u jdoe # all processes owned by a user
psinfo -p 8080 # find process on port 8080
psinfo -P 1234 # show specific PID
psinfo nginx -w # watch nginx processes
psinfo nginx -w 5 -s mem # watch nginx, sort by memory, 5s interval
psinfo nginx -t -w # nginx with tree view
Output
Card View (default)
Each matching process is shown as a panel. Metrics are colour-coded: green (< 10%), orange (≥ 10%), red (≥ 50%).
Tree View (-t)
Results are grouped by parent/child relationships. Parent nodes show their own CPU plus a ∑ total across the whole subtree.
User View (-u)
Filter processes by username.
Port View (-p)
Find the process listening on a specific port.
PID View (-P)
Show a single process by PID.
Top View (-T)
Show only the top N results.
Expand View (-e)
Show full command line with wrapping instead of truncation.
Requirements
- Python 3.9+
Platform Support
| Platform | Status | Notes |
|---|---|---|
| macOS | ✓ | --port requires sudo |
| Linux | ✓ | |
| Windows | ✓ | Shows handles instead of file descriptors |
License
MIT — see LICENSE.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file psinfo-1.1.3.tar.gz.
File metadata
- Download URL: psinfo-1.1.3.tar.gz
- Upload date:
- Size: 7.1 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
275f442bfddcd3d1c69cde3f2ed1a64baa191377ecc4f93cca5bbac9623bdcb1
|
|
| MD5 |
2bfba9a320bf5b48d03d99c24b009e1c
|
|
| BLAKE2b-256 |
7746cdff77660cc2a595d231ccddfafb8c924d5bf7bb30414164089e6fc622bb
|
Provenance
The following attestation bundles were made for psinfo-1.1.3.tar.gz:
Publisher:
release.yml on dblore/psinfo
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
psinfo-1.1.3.tar.gz -
Subject digest:
275f442bfddcd3d1c69cde3f2ed1a64baa191377ecc4f93cca5bbac9623bdcb1 - Sigstore transparency entry: 1234397064
- Sigstore integration time:
-
Permalink:
dblore/psinfo@7ca20aaad14c96c34263a13ad759e5d3302fe5d4 -
Branch / Tag:
refs/heads/main - Owner: https://github.com/dblore
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
release.yml@7ca20aaad14c96c34263a13ad759e5d3302fe5d4 -
Trigger Event:
push
-
Statement type:
File details
Details for the file psinfo-1.1.3-py3-none-any.whl.
File metadata
- Download URL: psinfo-1.1.3-py3-none-any.whl
- Upload date:
- Size: 3.7 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
6ecd54ca3833d044e8f0504a34d8ddd88aa46d472120576d0e03a01c9ffe9900
|
|
| MD5 |
bf4508c5aca16e599bcc6e949a7b98f1
|
|
| BLAKE2b-256 |
b25cdebe017dc97274b4afa5c82542764b6f0e91ad1a78209f072650d650ee28
|
Provenance
The following attestation bundles were made for psinfo-1.1.3-py3-none-any.whl:
Publisher:
release.yml on dblore/psinfo
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
psinfo-1.1.3-py3-none-any.whl -
Subject digest:
6ecd54ca3833d044e8f0504a34d8ddd88aa46d472120576d0e03a01c9ffe9900 - Sigstore transparency entry: 1234397144
- Sigstore integration time:
-
Permalink:
dblore/psinfo@7ca20aaad14c96c34263a13ad759e5d3302fe5d4 -
Branch / Tag:
refs/heads/main - Owner: https://github.com/dblore
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
release.yml@7ca20aaad14c96c34263a13ad759e5d3302fe5d4 -
Trigger Event:
push
-
Statement type: