Installation
NetsCLI publishes command-line binaries and desktop installers through GitHub Releases. The CLI/TUI binary is named netscli. The desktop app is distributed as NetsCLI Desktop.
Recommended installs
Section titled “Recommended installs”| Platform | Recommended path | Installs |
|---|---|---|
| Windows | winget install fstubner.netscli |
CLI and TUI |
| Windows | winget install fstubner.netscli.gui |
Desktop app |
| macOS | Homebrew or install script | CLI and TUI |
| Linux | Install script, Homebrew, AUR, or release artifact | CLI and TUI |
| Rust users | cargo install netscli |
CLI and TUI from crates.io |
Windows
Section titled “Windows”Use winget for the hash-verified install path:
winget install fstubner.netscliThe desktop app is distributed separately:
winget install fstubner.netscli.guiScoop is also supported, for both the CLI and the desktop app:
scoop bucket add fstubner https://github.com/fstubner/scoop-bucketscoop install netscliscoop install netscli-guiOr the PowerShell install script, which picks the right asset for your machine:
iwr -useb https://raw.githubusercontent.com/fstubner/netscli/main/scripts/install.ps1 | iexDirect Windows installers are attached to GitHub Releases. They are not Authenticode-signed yet, so Windows may show a publisher warning when installing outside winget. The winget manifests verify release asset hashes.
Use Homebrew when available:
brew tap fstubner/tap && brew install netscliOr use the install script:
curl -fsSL https://raw.githubusercontent.com/fstubner/netscli/main/scripts/install.sh | bashDesktop .dmg artifacts are attached to GitHub Releases where the release workflow publishes them. macOS may require the usual first-run approval for unsigned or independently distributed apps.
Use the install script:
curl -fsSL https://raw.githubusercontent.com/fstubner/netscli/main/scripts/install.sh | bashInstall with Homebrew on Linux when you use Linuxbrew:
brew tap fstubner/tap && brew install netscliOn Arch-based systems with an AUR helper:
yay -S netscli-binRelease artifacts may include Linux CLI binaries and desktop packages such as .deb or .AppImage, depending on the release.
If Rust is installed:
cargo install netscliCargo installs the CLI/TUI binary. It does not install the desktop app.
Updating
Section titled “Updating”Use the same package manager you installed with.
Update the CLI and TUI on Windows:
winget upgrade fstubner.netscliUpdate the desktop app on Windows:
winget upgrade fstubner.netscli.guiUpdate a Homebrew install:
brew upgrade netscliFor direct release artifacts, download the latest GitHub release and replace the previous install with the matching package for your platform.
Packet capture
Section titled “Packet capture”No install on this page includes packet capture. It is a compile-time feature, and every published build — the desktop installers, the standard CLI release assets, and cargo install netscli — is built without it. That keeps the default install free of any libpcap/Npcap dependency and avoids redistributing Npcap.
Normal scan, discovery, DNS, ARP, ping, trace, and interface workflows are unaffected and need none of this.
If you do want packet capture, you need both a build that has the feature compiled in and the system capture library.
CLI with packet capture
Section titled “CLI with packet capture”The install script does both at once — it selects the -pcap build and installs the system library:
curl -fsSL https://raw.githubusercontent.com/fstubner/netscli/main/scripts/install.sh | NETSCLI_PCAP=1 bash$env:NETSCLI_PCAP=1; iwr -useb https://raw.githubusercontent.com/fstubner/netscli/main/scripts/install.ps1 | iexOn Windows this runs the Npcap installer, which needs administrator rights. Add NETSCLI_SKIP_NPCAP=1 (or NETSCLI_SKIP_LIBPCAP=1 on Unix) if you manage the capture library yourself.
Alternatively, download the -pcap asset directly from the latest release — netscli-linux-x86_64-pcap, netscli-macos-aarch64-pcap, netscli-windows-x86_64-pcap.exe, and so on — and install the capture library separately. There is no -pcap musl build.
Or build it yourself, which needs the development headers (libpcap-dev on Debian/Ubuntu, or the Npcap SDK on Windows):
cargo install netscli --features pcapDesktop app with packet capture
Section titled “Desktop app with packet capture”There is no published desktop installer with packet capture. The Packet Capture tool appears in the app but shows setup guidance instead of running. To get a capture-capable desktop build you have to build from source:
cd apps/netscli-guinpm installnpm run tauri build -- --features pcapSystem requirements
Section titled “System requirements”| Platform | Requirement |
|---|---|
| Windows | Npcap installed. wpcap.dll lives in C:\Windows\System32\Npcap\, which is not on PATH by default — add it, or let NETSCLI_PCAP=1 do it. |
| Linux | libpcap installed, plus capture permissions (CAP_NET_RAW or root). |
| macOS | libpcap available, plus capture permissions where required. |
Checking what you have
Section titled “Checking what you have”netscli doctor works on every build and reports whether packet capture is compiled in and whether the runtime library is present:
netscli doctorNote that netscli pcap --check only exists on builds that were compiled with the feature — on a standard build the subcommand is absent entirely and you will get an “unrecognized subcommand” error rather than a useful message. Use doctor to find out which build you have.