Skip to content

Kaval. Guard your ports.

[kaa-val] · noun · guard / watch

See what's listening. Kill what shouldn't be. A developer-focused port and process manager for your terminal — built in Rust. Fast and interactive.

MIT · macOS & Linux

zsh — kav
PortProcessServiceMem
3000nodeNext.js156MB
5432postgresPostgreSQL234MB
6379redis-serverRedis12MB
8080nginxNginx8MB
/ Filter^X Kill^S Sort? Help

Know your ports. Control your stack.

Stop running lsof | grep five times a day.

Port scanner

See every listening TCP/UDP port and the process behind it, at a glance.

One-key kill

Terminate rogue processes with a single keystroke — SIGTERM or SIGKILL.

Smart detection

Auto-identifies 56+ dev tools by port and name: Next.js, Postgres, Docker & more.

Scriptable

JSON output, exit codes and one-liners for CI scripts and your own tooling.

Ready to guard your ports?

Install Kaval in seconds. No dependencies, no setup.

brew update && brew tap AppachiTech/kaval && brew install kaval

Frequently asked questions

Does Kaval need sudo?

No for viewing ports. Yes for killing system processes or processes owned by other users. Regular dev processes (node, postgres, etc.) do not require sudo.

How is it different from lsof?

Kaval gives you an interactive TUI with real-time filtering, sorting, service detection, clipboard yank and one-key kill. lsof gives you a wall of text you pipe through grep five times.

Can I kill multiple ports at once?

Yes. "kav kill 3000 5432" kills all matching ports in one command, with a scriptable exit code when nothing is found.

Does it work with Docker?

Yes. Docker containers are detected and labelled, and browser-proxied ports are grouped to avoid duplicate rows.

Is it open source?

Yes, MIT licensed. Source at github.com/AppachiTech/kaval.