icport (as in "I see port") is a cross-platform CLI tool for monitoring and managing network ports. It provides a terminal UI (TUI) for viewing active ports, killing processes, and managing port usage.
macOS and Linux:
Install with a single command:
curl -fsSL https://raw.githubusercontent.com/behnamazimi/icport/main/install.sh | bashOr download and run the installer:
curl -fsSL https://raw.githubusercontent.com/behnamazimi/icport/main/install.sh -o install.sh
chmod +x install.sh
./install.shWindows:
For native Windows (PowerShell/CMD), download the .exe manually from Releases.
Download the pre-built binary for your platform from Releases.
npm install -g icport# Clone the repository
git clone <repository-url>
cd icport
# Install dependencies
npm install
# Build
npm run build:ts
# Run
npm run dev # Development with Node.js
# or
node dist/cli.js # Production with Node.jsLaunch the terminal UI:
icportKill a process on a specific port:
icport kill 3000
icport kill --port 3000 --forceFilter and sort:
icport --type dev-server
icport --type "dev-*" --user "j*"
icport --sort port --type api↑/↓- Navigate ports/- Search port (likelsof -i :PORT)k- Kill selected portr- Restart processc- Copy command to clipboardv- View full commandl- View process logsd- Toggle details view1/2/3- Sort by port/process/pidg- Toggle group collapse?- Show/hide helpq- Quit
Uses lsof and ps commands for port detection and process management.
Uses netstat, tasklist, taskkill, and wmic for port detection and process management.
- Runtime: Node.js >= 18.0.0
- Development: Node.js >= 18.0.0
- Binary Build: Node.js 18.x (pkg currently supports up to Node.js 18)
For standalone binaries, no runtime is required - they are self-contained executables with Node.js 18 embedded.
Note: The pkg tool currently supports up to Node.js 18. When Node.js 22 support is added to pkg, update the build scripts to use node22-* targets.
Build Process: Binaries are created by bundling the code with esbuild (to handle ES modules) and then packaging with pkg.
npm run devnpm run check-typesnpm run build:tsMIT
