Killport
A command-line tool to kill processes and containers running on specified ports.
Install / Use
/learn @jkfran/KillportREADME
killport
A command-line tool to kill processes and containers running on specified ports.
</div>Features
- Kill processes and containers by port number (single or multiple ports)
- Container runtime support — works with Docker, OrbStack, Podman, Colima, and any OCI-compatible runtime
- Dry-run mode — preview what would be killed without doing it
- Signal control — send any signal (SIGTERM, SIGKILL, SIGINT, etc.)
- Shell completions — built-in support for bash, zsh, and fish
- Cross-platform — Linux, macOS, and Windows
Installation
Homebrew
brew install killport
Cargo
cargo install killport
Shell script
curl -sL https://bit.ly/killport | sh
Add $HOME/.local/bin to your PATH if it's not already there.
Binary releases
Download pre-built binaries from the releases page. Each release includes shell completions and a man page.
Usage
killport [OPTIONS] <ports>...
Examples
Kill whatever is using port 8080:
killport 8080
Kill multiple ports at once:
killport 3000 8080 9090
Send SIGTERM instead of SIGKILL:
killport -s sigterm 8080
Dry run — see what would be killed:
killport --dry-run 8080
# Would kill process 'node' listening on port 8080
Kill only containers (skip native processes):
killport --mode container 8080
Suppress exit code 2 when nothing is found (useful in scripts):
killport --no-fail 8080
Options
| Flag | Description |
|---|---|
| -m, --mode <MODE> | Target mode: auto (default), process, or container |
| -s, --signal <SIG> | Signal to send (default: SIGKILL). See supported signals |
| --dry-run | Preview what would be killed without terminating anything |
| --no-fail | Exit 0 even when no matching process or container is found |
| -v, --verbose | Increase verbosity (repeat for more: -vv, -vvv) |
| -q, --quiet | Decrease verbosity (repeat for less: -qq) |
| -h, --help | Show help |
| -V, --version | Show version |
Exit codes
| Code | Meaning |
|---|---|
| 0 | Target(s) found and killed (or --no-fail was used) |
| 1 | Error (permission denied, internal failure, etc.) |
| 2 | No matching process or container found on the specified port(s) |
How it works
In auto mode (default), killport:
- Checks if a container runtime is available
- If containers are found on the port, kills only the containers (port forwarder processes like
docker-proxyorOrbStack Helperare automatically skipped) - If no containers are found, falls back to killing native processes
Use --mode process or --mode container to target only one type.
Shell completions
Shell completions are included in release tarballs under completions/. To install:
bash — copy to ~/.local/share/bash-completion/completions/killport
zsh — copy to a directory in your $fpath (e.g., ~/.zsh/completions/_killport)
fish — copy to ~/.config/fish/completions/killport.fish
Contributing
Contributions are welcome. See CONTRIBUTING.md and CODE_OF_CONDUCT.md.
License
Related Skills
pestel-analysis
Analyze political, economic, social, technological, environmental, and legal forces
orbit-planning
O.R.B.I.T. - strategic project planning before you build. Objective, Requirements, Blueprint, Implementation Roadmap, Track.
next
A beautifully designed, floating Pomodoro timer that respects your workspace.
product-manager-skills
31PM skill for Claude Code, Codex, Cursor, and Windsurf: diagnose SaaS metrics, critique PRDs, plan roadmaps, run discovery, and coach PM career transitions.
