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.3.0.tar.gz (20.4 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.3.0-py3-none-any.whl (27.3 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: procclean-1.3.0.tar.gz
  • Upload date:
  • Size: 20.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.9.26 {"installer":{"name":"uv","version":"0.9.26","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.3.0.tar.gz
Algorithm Hash digest
SHA256 cec9289258c56fc5995764fd1739bb89084845c7f3c979e3a09502f701d3dc66
MD5 ccaa1d3f6bc818f7fa5c0f1c8fd65cec
BLAKE2b-256 1ac2af41202a8f616ec5e5002ee5867542b991df27143419ed6cddebf5fdad4f

See more details on using hashes here.

File details

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

File metadata

  • Download URL: procclean-1.3.0-py3-none-any.whl
  • Upload date:
  • Size: 27.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.9.26 {"installer":{"name":"uv","version":"0.9.26","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.3.0-py3-none-any.whl
Algorithm Hash digest
SHA256 282337e3f32e0eda15ca57250c4c3a30fb53b227a292dd40df1c986f456a4b69
MD5 8572ff1bc944a92871f995ba6947b567
BLAKE2b-256 524f9e69f99c546d4baf07d7ba1f37d86a58e26cc1921605a6e1de7d42c2f8bd

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