Skip to main content

Interactive TUI for exploring and cleaning up processes - find orphans, memory hogs, and kill them

Project description

procclean

Interactive TUI for exploring and cleaning up processes - find orphans, memory hogs, and kill them.

PyPI License Docs Python 3.14+ Linux

Features

  • Memory overview - Real-time total/used/free/swap display
  • Multiple views - All processes, Orphaned, Process Groups, High Memory (>500MB)
  • Orphan detection - Finds processes whose parent died (PPID=1)
  • Tmux awareness - Won't flag tmux processes as orphan candidates
  • Batch operations - Select multiple processes and kill them at once
  • Process grouping - Find duplicate/similar processes consuming resources
  • CLI mode - Scriptable commands with JSON/CSV/Markdown output

Installation

pip install procclean

Or with uv:

uv tool install procclean

Run without installing:

uvx procclean

Usage

TUI Mode (default)

procclean

CLI Commands

procclean list                      # List processes (table)
procclean list -f json|csv|md       # Different output formats
procclean list -s mem|cpu|pid|name|cwd  # Sort by field
procclean list -o                   # Orphans only
procclean list -m                   # High memory only
procclean list -k                   # Killable orphans only
procclean list --cwd                # Filter by current directory
procclean list --cwd /path/to/dir   # Filter by specific cwd

procclean groups                    # Show process groups

procclean kill <PID> [PID...]       # Kill process(es)
procclean kill -f <PID>             # Force kill (SIGKILL)
procclean kill --cwd /path -y       # Kill all in cwd (skip confirm)
procclean kill -k -y                # Kill all killable orphans
procclean kill -k --preview         # Preview what would be killed

procclean mem                       # Show memory summary

TUI Keybindings

Key Action
q Quit
r Refresh
k Kill selected (SIGTERM)
K Force kill (SIGKILL)
o Show orphans
a Show all
g Show groups
w Filter by selected cwd
W Clear cwd filter
Space Toggle selection
s Select all visible
c Clear selection
1 Sort by memory
2 Sort by CPU
3 Sort by PID
4 Sort by name
5 Sort by cwd
! Reverse sort order

Views

  • All Processes - All user processes sorted by memory usage
  • Orphaned - Processes with PPID=1 (parent died)
  • Process Groups - Similar processes grouped together
  • High Memory - Processes using >500MB RAM

Output Formats

CLI supports multiple output formats via -f:

  • table - Human-readable table (default)
  • json - JSON array for scripting
  • csv - CSV for spreadsheets
  • md - Markdown table

Requirements

  • Python 3.14+
  • Linux (uses /proc filesystem)

Development

git clone https://github.com/kjanat/procclean
cd procclean
uv sync
uv run pre-commit install

Run tests:

uv run pytest

License

MIT

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

procclean-1.2.1.tar.gz (19.9 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

procclean-1.2.1-py3-none-any.whl (26.8 kB view details)

Uploaded Python 3

File details

Details for the file procclean-1.2.1.tar.gz.

File metadata

  • Download URL: procclean-1.2.1.tar.gz
  • Upload date:
  • Size: 19.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.9.21 {"installer":{"name":"uv","version":"0.9.21","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for procclean-1.2.1.tar.gz
Algorithm Hash digest
SHA256 e941961829af088d517aac3b5c454fe305b140ea8ed8ed51cf8ebbfb2cb73e5e
MD5 5a53555428780107659f02638e663ca3
BLAKE2b-256 ef8198207f7ce1d26d62cecdbda41cadee3b6739d4fd8bc3a848351d296a1192

See more details on using hashes here.

File details

Details for the file procclean-1.2.1-py3-none-any.whl.

File metadata

  • Download URL: procclean-1.2.1-py3-none-any.whl
  • Upload date:
  • Size: 26.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.9.21 {"installer":{"name":"uv","version":"0.9.21","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for procclean-1.2.1-py3-none-any.whl
Algorithm Hash digest
SHA256 edf2e86b10ea34dfbf172e7285247525483f89cae2e4b247c7c479dda4415a9e
MD5 7d41d11ff5a0b2c95c57effa5b48a89f
BLAKE2b-256 20cc0f0428abf72beaa2e8f716117b10489760ed887540cf2de90e339c01e9a7

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page