Skip to content

Github · GitHub Repository Radar

matthart1983 netwatch

Real-time network diagnostics in your terminal. One command, zero config, instant visibility.

Stars

3,019

Forks

141

Watchers: 3,019

Language

Rust

License: MIT License

Repository Radar Score

0 / 100

Growth

7d
+0
30d
+0
%
0.0%

Not enough metric snapshots yet to chart growth for this repository.

Score breakdown

Need help integrating this stack?

Our team builds with modern open-source stacks. Tell us what you are shipping.

Get a quote →
Trending

NetWatch

A network monitor for the terminal that names the process behind every connection, reads TLS you hold the keys to, and tells you what is wrong and how to fix it.

Terminal Trove Tool of The Week

NetWatch's dense view: a mirrored braille throughput graph with download above the axis and upload below, per-interface rates with sparklines, four-hop latency budgets, and a connection table with the selected socket's kernel TCP state

netwatch --view dense. Four boxes, no chrome, every keybind on a border. Download grows up from the axis, upload grows down.

One binary, no config. sudo netwatch and you have live capture with L7 decode, the program behind each socket, and a diagnostic engine that opens an issue when a learned baseline breaks and closes it when the fix holds.

Install

brew install netwatch                 # macOS / Linux
nix-shell -p netwatch                 # NixOS / Nix
paru -S netwatch-tui-bin              # Arch
scoop install netwatch                # Windows (needs Npcap)
cargo install netwatch-tui            # anywhere with Rust and libpcap headers

Prebuilt binaries, including static Linux builds with libpcap bundled, are on the releases page. Windows needs Npcap installed first; building from source needs libpcap-dev (Debian), libpcap-devel (Fedora) or libpcap (Arch). Details in the install reference.

Run

netwatch              # interfaces, connections, config. No privileges.
sudo netwatch         # adds packet capture and health probes
netwatch --lite       # one 80x24 screen
netwatch --view dense # four boxes, 130x44 or larger

1 to 9 and 0 switch tabs, V cycles the three views, ? shows every key. To run without sudo on Linux, grant the capabilities once: sudo setcap 'cap_net_raw,cap_bpf,cap_perfmon+eip' "$(which netwatch)" (why and when to repeat it).

What it does

Diagnose (tab 9). Per-metric baselines learned over 30 minutes and scoped to the network that taught them. 25 rules, all active as of 0.30.3, with a suppression graph so a dead gateway is one finding with its consequences underneath. Each cause is ranked by the checks that separated it from the others. Fixes are key-bound, journal before they write, and revert on the next start if the process died mid-write. An issue closes only when the rule's own success condition has held. No model involved. How it works, the design.

A slow resolver at 33 times its baseline, three ranked causes, a key-bound fix, and the issue closing itself once dns.rtt_p50 has held under 5ms for 60 seconds

Decrypt TLS you control. Point any client's SSLKEYLOGFILE at NetWatch and the plaintext of its TLS 1.3 sessions decodes in the Packets tab. Same mechanism as Wireshark, so it only works for traffic you hold the keys to. TLS decryption.

sudo netwatch                                              # open Packets (4)
SSLKEYLOGFILE=/tmp/keys curl https://example.com           # any client that exports keys
# filter the tab with:  decrypted:true

Egress drift. The Egress tab (0) learns which hosts, autonomous systems and ports each process reaches. Enter promotes that baseline to a rule; the next new destination arrives as drift with an alert. It observes and never blocks. Verdicts are sni, ip, asn, ech, drift, no rule and undeclared under strict = true, because "matched by AS" admits everything a hyperscaler runs and the table should say so. Rule language and export schema.

Process attribution. ss/lsof on every platform, PKTAP on macOS, and an optional eBPF kprobe on Linux (ebpf feature) that catches flows too short for polling. Permissions.

Threat detection. C2 beaconing, port scans and DNS tunnelling run in the background. A critical alert freezes the flight recorder so the bundle exists before you look. JA4 fingerprints each TLS and QUIC handshake so you can pivot to every flow from the same client. Security and forensics, flight recorder, JA4.

Sandboxed. After setup, NetWatch drops privileges and confines itself to a Landlock allow-list on Linux. It parses hostile traffic and cannot read your SSH keys.

The tabs

# Tab Shows
1 Dashboard Latency tiles, mirrored throughput, the link carrying it, connections rolled up per process
2 Connections Every socket with process, PID, state, GeoIP, RTT, retransmits
3 Interfaces Addresses, MTU, rates, errors, drops
4 Packets Live decode, TLS 1.3 decryption, JA4, stream tracking, display filters, PCAP export
5 Stats Protocol breakdown and handshake-timing histogram
6 Topology Machine, gateway, DNS, top hosts, traceroute
7 Timeline Connections by TCP state, with alerts
8 Processes Bandwidth per process
9 Diagnose Issue, cause, fix, verified close. report.md from the same objects
0 Egress Learned destinations, promoted policy, drift

Every keybinding, display filters, decoders, themes, configuration.

Three views, one capture

V cycles between them without a restart; the collectors keep running.

Full is the ten tabs above.

Lite (--lite) fits 80x24: throughput, gateway/DNS/internet reachability, top talkers, six keys. For an SSH session to a Pi or a tmux split.

Dense (--view dense) is the hero image. It needs 130x44 and grows into anything larger. Throughput is braille at two samples per cell, coloured by height so a spike reads before you check the axis. The connection table hoists the selected row's detail, including kernel cwnd, ssthresh, mss and rwnd, into the top of its own box. 1 to 4 zoom a box to the whole screen. Dense and Lite.

Docs

Reference Keys, filters, decoders, configuration, permissions, security
Design 0.30 Why the screens look the way they do
Architecture Runtime, source map, permissions model, how to build and verify
Egress linting Observe, promote, warn
AI Insights Optional LLM commentary inside Diagnose, off by default
Prometheus export Exposed metrics and scrape config
Changelog Every release

Related

SysWatch and DiskWatch share the chrome. ESSH is a Rust SSH client with the same look. NetWatch Cloud is hosted fleet monitoring built on the MIT agent, SDK and dashboard.

Thanks

I packaged none of this. Dominiquini and kemelzaidan maintain netwatch-tui and netwatch-tui-bin on the AUR, tomasrivera the nixpkgs package, scillidan the Scoop entry, and the Homebrew maintainers took the formula into core. File packaging problems with them and netwatch bugs here.

@lamchau, @fdncred and @PeteE sent patches. Everyone who opened an issue with a repro or argued with a design decision is the reason the output is right on more terminals than mine.

Contributing

Discussions, issues, CONTRIBUTING.md.

License

MIT

Created: Feb 14, 2026

Last push: Sep 9, 2026

Default branch: main

Latest release: v0.30.4

Languages

Share of the codebase by language, based on repository metadata from the host.

  • Rust 99.0%
  • Shell 0.8%
  • Nix 0.1%
  • Python 0.1%
  • Tape 0.1%

Repository Radar analysis

Deterministic insights derived from public metadata and our observations — not personal testing or reviews.

Why this repository is interesting

  • Maintained recently (last push 1 week ago).

Who should use it

  • Developers working primarily with Rust

Potential use cases

  • Reference or evaluate Rust open-source approaches in this domain

Strengths

  • Recent repository activity
  • README present in our index
  • Declared license: MIT License

Limitations / considerations

  • Insights are derived from public metadata and our observations — not a substitute for code review

What to watch

  • Radar Score is modest — dig into activity and docs before committing

Strong signals: Active maintenance

Source: GitHub (public metadata) + Repository Radar analysis. We do not claim ownership of third-party repositories.

Ready to ship something that compounds?

Share your roadmap. We’ll come back with scope options, timeline ranges, and who from Shriram IT Ventures should be in the room.

Popular with product teams