A fast, friendly CLI/TUI tool for viewing port usage and killing processes.
Quickly resolve "port already in use" errors — check ports, identify processes, and kill them in a single command.
- Quickly identify which process is using any port
- Kill processes on one or more ports in a single command
- Live
--watchmode and an interactive TUI with auto-refresh - English / Japanese UI, switchable at runtime
- Shell completions for bash, zsh, fish, powershell, elvish
- Single static binary with no runtime dependencies
curl --proto '=https' --tlsv1.2 -LsSf https://github.com/iorinu/pwatch/releases/latest/download/pwatch-installer.sh | shbrew install iorinu/tap/pwatchgit clone https://github.com/iorinu/pwatch
cd pwatch
cargo install --path .Pre-built binaries for every release are also available on the Releases page.
pwatch list # what's listening on this machine?
pwatch kill 3000 # free a stuck port
pwatch kill 3000 5173 8080 # free several at once
pwatch ui # interactive viewer + killer (TUI)pwatch listOutput as JSON:
pwatch list --jsonContinuously refresh (like top):
pwatch list --watch # refresh every 2 seconds
pwatch list --watch --interval 5 # custom intervalpwatch check 8080pwatch kill 8080 # SIGTERM
pwatch kill 8080 --force # SIGKILL
pwatch kill 8080 3000 5173 # kill multiple ports at onceIf you get a permission error:
sudo pwatch kill 8080pwatch ui| Key | Action |
|---|---|
j / ↓ |
Move selection down |
k / ↑ |
Move selection up |
d |
Kill with SIGTERM (with confirmation) |
D |
Kill with SIGKILL (with confirmation) |
/ |
Search mode |
r |
Manual refresh |
a |
Toggle auto-refresh |
+ / - |
Adjust auto-refresh interval (±0.5s) |
q / Esc |
Quit |
Disable the startup banner:
pwatch config banner offRe-enable it:
pwatch config banner onSwitch the display language (runtime messages and TUI). The default is English:
pwatch config lang ja # Japanese
pwatch config lang en # English (default)Note:
--helpoutput is always in English. Only runtime messages (CLI output, TUI labels) are localized.
Settings are saved to ~/.config/pwatch/config.toml.
Generate a completion script for your shell:
pwatch completion bash > /usr/local/etc/bash_completion.d/pwatch
pwatch completion zsh > ~/.zsh/completion/_pwatch # ensure dir is in $fpath
pwatch completion fish > ~/.config/fish/completions/pwatch.fishSupported shells: bash, zsh, fish, powershell, elvish.
| OS | Scan Method |
|---|---|
| Linux | Direct /proc/net/tcp parsing |
| macOS | Via lsof command |
cargo build --releaseLicensed under the MIT License.
Copyright (c) 2026 iorinu