A modular toolkit for scouting, probing, and analyzing networks.
Fast • Extensible • Cross-Platform
Documentation · Downloads · Issues
GoScouter is a modular toolkit for scouting, probing, and analyzing networks. It bundles a collection of composable modules behind a single, consistent command-line interface — so you can discover hosts, enumerate services, and inspect network behavior without juggling a dozen separate tools.
Built with a focus on speed and extensibility, GoScouter is designed to grow with your workflow: enable only the modules you need, script it into your pipelines, and extend it with your own probes.
⚠️ Use responsibly. GoScouter is intended for authorized security testing, research, and network administration only. Always ensure you have explicit permission to scan and probe the networks and hosts you target.
- Modular architecture — Each capability lives in its own module. Load what you need, skip what you don't.
- Cross-platform — First-class support for macOS, Linux, and Windows.
- Extensible — A clean plugin surface makes it straightforward to add your own probes and analyzers.
- Unified CLI — One consistent command-line interface across every module.
- Analysis-ready output — Human-readable by default, with machine-friendly formats for scripting and automation.
| Platform | Supported | Notes |
|---|---|---|
| Linux | ✅ | Primary development platform |
| macOS | ✅ | Intel & Apple Silicon |
| Windows | ✅ | Windows 10 / 11 |
The install script picks the right prebuilt binary for your platform from the latest release, verifies its SHA-256 checksum, and installs it.
Linux and macOS
curl -fsSL https://raw.githubusercontent.com/GoScouter/GoScouter/main/scripts/install.sh | shWindows (PowerShell)
irm https://raw.githubusercontent.com/GoScouter/GoScouter/main/scripts/install.ps1 | iexBy default gs lands in /usr/local/bin when that's writable and ~/.local/bin
otherwise; on Windows it goes to %LOCALAPPDATA%\Programs\GoScouter, which the
script adds to your user PATH.
Both scripts take the same options:
| Linux / macOS | Windows | Environment | Description |
|---|---|---|---|
--version <tag> |
-Version <tag> |
GS_VERSION |
Release tag to install (default: latest) |
--dir <path> |
-InstallDir <path> |
GS_INSTALL_DIR |
Install directory |
--no-verify |
-NoVerify |
GS_NO_VERIFY=1 |
Skip the checksum check |
| — | -NoPath |
— | Leave PATH untouched |
A piped script can't take flags, so either use the environment variables:
GS_VERSION=v1.2.3 GS_INSTALL_DIR=~/bin \
sh -c "$(curl -fsSL https://raw.githubusercontent.com/GoScouter/GoScouter/main/scripts/install.sh)"or download it first and run it with flags:
curl -fsSL https://raw.githubusercontent.com/GoScouter/GoScouter/main/scripts/install.sh -o install.sh
sh install.sh --version v1.2.3 --dir ~/binAlternatively, grab the binary for your platform from the
Releases page and put it on
your PATH:
chmod +x gs-linux-amd64
sudo mv gs-linux-amd64 /usr/local/bin/gsBuilding from source requires the Go toolchain
(1.26 or newer), make, and git.
# Clone the repository
git clone https://github.com/GoScouter/GoScouter.git
cd GoScouter
# Build the binary (produces ./gs)
make buildmake build compiles the project from ./cmd and produces a gs binary in
the current directory. To cross-compile a release binary for a specific
platform, use the release-build target:
# Cross-compile for a specific OS/arch — output lands in dist/
make release-build GOOS=linux GOARCH=amd64 # dist/gs-linux-amd64
make release-build GOOS=darwin GOARCH=arm64 # dist/gs-darwin-arm64
make release-build GOOS=windows GOARCH=amd64 # dist/gs-windows-amd64.exe| Target | Description |
|---|---|
make build |
Build the gs binary |
make run |
Build and run directly via go run |
make test |
Run the test suite with the race detector |
make fmt |
Format the source with go fmt |
make vet |
Run go vet |
make tidy |
Tidy go.mod / go.sum |
make clean |
Remove build artifacts |
GoScouter runs as an interactive shell. Point it at a target with the
--target flag (the target must include an http:// or https://
prefix), and GoScouter drops you into its prompt:
gs --target https://example.comOnce inside the shell, type help to list the available built-in commands:
$ gs --target https://example.com
# ... banner ...
gs> help # list built-in commands
gs> info # show tool information
gs> install https://github.com/GoScouter/some-module
gs> exit # leave the shell (or press Ctrl-D)Contributions are welcome! Whether it's a bug report, a feature request, a new module, or documentation improvements, we'd love your help.
- Found a bug or have an idea? Open an issue.
- Want to contribute code? Fork the repository, create a branch, and open a pull request.


