Skip to content

AppachiTech/kaval

Kaval — Guard your ports.

CI License: MIT

Kaval (காவல், Tamil for "Guard/Watch") is a developer-focused port and process manager TUI built in Rust.

Stop running lsof -i :3000 | grep LISTEN. Kaval shows all listening ports, maps them to processes, identifies known dev tools, and lets you kill with a keystroke.

Features

  • See everything at a glance — all listening ports with process name, PID, CPU, memory, uptime
  • Smart service detection — recognizes Vite, Next.js, PostgreSQL, Redis, Django, Docker, and 30+ more
  • Interactive TUI — filter, sort, navigate, kill processes — all from one screen
  • One-shot commandskav list, kav check 3000, kav kill 3000 for scripting
  • JSON outputkav list --json for piping to other tools
  • Color-coded — green for dev servers, yellow for databases, purple for caches

Install

Homebrew (recommended):

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

Manual (macOS):

curl -sL https://downloads.appachi.tech/macos/kav-macos-latest.tar.gz | tar xz
sudo mv kav /usr/local/bin/

Manual (Linux):

curl -sL https://downloads.appachi.tech/linux/kav-linux-latest.tar.gz | tar xz
sudo mv kav /usr/local/bin/

Build from source:

cargo build --release
sudo cp target/release/kav /usr/local/bin/

Update

brew upgrade kaval                # Homebrew

Manual install users can re-run the install command — the URL always points to the latest release.

Usage

kav                  # Launch interactive TUI
kav list             # Print all listening ports
kav list --json      # JSON output
kav check 3000       # What's on port 3000?
kav kill 3000        # Kill process on port 3000
kav kill 3000 -f     # Force kill (SIGKILL)

TUI Keyboard Shortcuts

Key Action
↑/↓ or j/k Navigate
/ Filter by port, name, or service
Ctrl+X Kill selected process (with confirmation)
Ctrl+K Force kill (SIGKILL, no confirmation)
Ctrl+D Toggle detail pane
Ctrl+S Cycle sort (Port → Name → CPU → Mem)
Ctrl+T Toggle TCP/UDP filter
Ctrl+R Force refresh
Ctrl+Q / Esc Quit

Privacy

  • Zero storage: Kaval writes nothing to disk. No config, no logs, no database.
  • Zero network: Kaval makes no network connections of any kind.
  • Zero telemetry: No analytics, no crash reports, no data collection.

Links

License

MIT — Madhubalan Appachi