PortKill 0.2.0
Highlights
- Docker-aware. Ports published by Docker Desktop or OrbStack show the container name and image instead of
com.docker.backend. These rows are read-only (signalling the proxy would stop the engine) and offer a copyabledocker stop <name>. - One row per process. A process listening on several ports shows them together, and a container's ports are grouped the same way.
- Memory per row, and project detection for Go, Ruby, PHP, Java/Kotlin, Elixir and Pipenv projects.
- Keyboard first.
⌘Fsearches,Escclears,⌘Rrefreshes. - Quick actions. Open the project in Terminal, iTerm2, Ghostty, Warp, kitty or Alacritty, and copy
kill <PID>orlsofsnippets. The kill snippet sendsSIGTERM, neverSIGKILL. - Settings menu. Launch at Login, an optional port count in the menu bar, a system-process toggle, opt-in UDP sockets and a terminal picker.
- Redesigned popover with category filters and a resizable height, plus an About dialog.
- Lighter when idle. With the menu bar count on, a closed popover runs one
lsofevery 10 seconds. Unchanged scans no longer redraw the popover.
Privacy
PortKill still collects nothing. Updates are checked only when you choose "Check for Updates…", which sends one request to api.github.com. It never checks on its own. Docker is queried only through a local socket, never a remote host.
Upgrading from 0.1.0
The bundle identifier changed to com.0x200.portkill, so your saved 0.1.0 settings do not carry over.
Install
Download PortKill-0.2.0.dmg, open it and drag PortKill to Applications. Check the download against SHA256SUMS.txt if you like.
This build is unsigned and not notarized, so macOS blocks it on first launch. Open System Settings > Privacy & Security and click Open Anyway, or run:
xattr -dr com.apple.quarantine /Applications/PortKill.appFull list of changes: CHANGELOG.md