PortKiller

PortKiller — Free Download. TCP port management and release
PortKiller is a cross-platform desktop application for developers that locates listening TCP ports and displays the linked processes. It allows searching by port or process name, pinning favorite items, monitoring specific ports with notifications, and terminating processes through graceful stop or forceful kill. Additionally, it manages kubectl port-forward sessions with status, logs, auto-reconnection, and notifications, and integrates visibility into active Cloudflare tunnels. It includes native applications for the macOS menu bar and the Windows system tray.
5.0(2 ratings)

Download PortKiller (Official links)
File size: 0.544 MB
The latest version of PortKiller is: 3.2.0
Operating system: Windows, Mac OS
Languages: English
Price: $0.00 USD

  • Discovery of listening ports. PortKiller scans the operating system to identify all TCP ports currently in a listening state. For each detected port, the tool resolves the associated process identifier (PID), the executable name, and the full command that initiated the listening. This information is presented in a sortable and filterable table, allowing the developer to quickly audit port occupancy on their workstation.
  • Combined filtering and search. The interface incorporates a unified search field that acts simultaneously on the port number and the process name. The search is incremental and case-insensitive. The result updates in real-time, showing only the rows that contain the searched string in any of the relevant columns, which reduces the time to locate specific processes in environments with a high density of open ports.
  • Pinning favorite ports. The user can mark specific ports or processes as favorites using a pin control. Pinned items always remain visible at the top of the list, regardless of the filters applied. The pin status is preserved between application sessions, allowing the developer to maintain permanent shortcuts to critical services such as development servers, databases, or local proxies.
  • Monitoring with notifications. PortKiller offers the ability to watch specific ports and receive system alerts when their status changes. It notifies when a monitored port goes from busy to free, or vice versa. A notification is also issued if the process associated with a monitored port terminates or is replaced by another. This feature is useful for knowing when a service has stopped unexpectedly or when a port becomes available again after manual release.
  • Process termination by grace or by force. The application provides two methods to terminate the process occupying a port. Graceful stop sends a soft termination signal, allowing the process to perform cleanup tasks. Forceful kill instructs the operating system kernel to terminate the process immediately. Both operations are executed with a single click and request prior confirmation to prevent accidental actions.
  • Kubernetes port-forward management. PortKiller implements a graphical client for kubectl port-forward. The user can define forwarding rules from local ports to pods, services, or deployments in Kubernetes clusters. Each port-forward session runs as a monitored child process, displaying its current status (connected, disconnected, error), the real-time log stream, and the option for automatic reconnection in case of transient network failures or cluster restarts.
  • Automatic reconnection with exponential backoff. For port-forward sessions that terminate unexpectedly, PortKiller retries establishing the connection. The interval between retries follows an exponential backoff progression up to a configurable maximum limit, avoiding network or Kubernetes API server saturation. This feature is relevant in development environments with unstable connections or during frequent restarts of monitored resources.
  • Integration with Cloudflare tunnels. The tool detects and displays active connections established via Cloudflare Tunnel. For each tunnel, the local destination, connection status, and associated public address are presented. Although PortKiller does not allow the creation of new tunnels, it provides immediate visibility into the web exposure infrastructure managed by the user, facilitating the debugging of remote access configurations.
  • Resident application in the macOS menu bar. On macOS systems, PortKiller is distributed with a specific component for the top menu bar. This icon provides instant access to a subset of functions: viewing the most used ports, quickly terminating processes, and accessing active port-forward sessions. The main application can be invoked from this same point, keeping the full interface out of the usual workspace.
  • Resident application in the Windows system tray. The Windows version includes integration with the system tray. From the icon in the notification area, the developer can check the status of monitored ports, selectively stop processes, and toggle the visibility of the main window. This integration follows Windows interface guidelines and respects the operating system's theme and scale.
  • Consistent cross-platform support. PortKiller maintains a unified codebase for Windows, macOS, and Linux. Differences between systems are encapsulated in specific adapters for obtaining the port table (tools like netstat, lsof, /proc/net/tcp) and for process termination (system calls, taskkill, kill). The functional behavior and the graphical interface remain identical across the three platforms, ensuring a single learning curve.
  • Preservation of configuration between restarts. All user preferences, including favorite ports, port-forward rules, and notification parameters, are stored in the operating system's configuration directory. This information persists after closing and reopening the application, as well as after software updates. The storage format is readable JSON, although it is not exposed for direct manual editing.

PortKiller was created in 2022 by the developer known as productdevbook, author of various tools oriented towards the software development ecosystem. The program is written entirely in TypeScript, using the Tauri framework to wrap the frontend logic in a lightweight web container and access operating system APIs via Rust. The frontend part of the interface uses React with function-based components and state managed through hooks. The official repository is hosted on GitHub under the name productdevbook/port-killer.


Alternatives to PortKiller: