Install the sptool process supervisor — no Docker required.
One command pulls the prebuilt binary straight out of a public container image and drops it on the machine. This one URL detects how it was fetched: curl → install.sh PowerShell → install.ps1 browser → this page
curl -fsSL https://sptool.bat.nz | shirm https://sptool.bat.nz | iexOne binary is all there is: sptool is both the CLI and, via a hidden
subcommand, the supervisor it starts for you.
| OS | Location | Notes |
|---|---|---|
| Linux | /usr/local/bin |
System-wide and already on PATH. Needs root — the script uses sudo if you aren't root. |
| Windows | %LOCALAPPDATA%\Microsoft\WindowsApps |
Per-user, no admin. This folder is already on PATH, so sptool runs by name in any shell.= C:\Users\<you>\AppData\Local\Microsoft\WindowsApps |
Both amd64 and arm64 are published for each OS; the scripts
pick the right one. There is no macOS build — the process machinery is Windows
Job Objects and Linux PDEATHSIG, with no darwin equivalent implemented.
Set these as environment variables before running the one-liner.
| Variable | Default | Meaning |
|---|---|---|
SPTOOL_VERSION | latest | release to install, e.g. 0.0.2 |
SPTOOL_BINDIR | see Where it installs | install directory |
# pin a version
curl -fsSL https://sptool.bat.nz | SPTOOL_VERSION=0.0.2 sh
# install somewhere you own, no sudo
curl -fsSL https://sptool.bat.nz | SPTOOL_BINDIR=$HOME/.local/bin sh# pin a version
$env:SPTOOL_VERSION='0.0.2'; irm https://sptool.bat.nz | iex
# install elsewhere
$env:SPTOOL_BINDIR='C:\tools'; irm https://sptool.bat.nz | iexAfter the first install the tool updates itself — no script, same source:
sptool shutdown # stops every probe under the supervisor
sptool updateupdate refuses to run while a supervisor is up. That supervisor is the
old build and the new CLI would not talk to it anyway, so retiring it is deliberate
rather than a surprise — shutdown takes the probes down with it.
--version 0.0.2 installs an exact release; --force reinstalls
the current one.
Profiles live in one YAML file — ~/.config/sptool/config.yaml, or
%APPDATA%\sptool\config.yaml on Windows. Then:
sptool run -v interval=30 netprobe # flags precede the profile name
sptool list
sptool logs --tail 50 netprobe
sptool stop netprobeAppend the filename to skip detection: sptool.bat.nz/install.sh · sptool.bat.nz/install.ps1
ghcr.io/andrewsav/supervisor-tool-dist
(a scratch image holding the four builds). The scripts pull its single
layer with curl + tar — no Docker, crane, or oras needed.static nginx service (in the mailserver-private
deploy), which hosts every install site from one container — this one is
html/sptool. Source of truth: the install/ folder of the
SupervisorTool repo.git tag v0.0.3 && git push --tagsCI gates on a Linux + Windows test matrix, then publishes the GitHub release and
pushes the GHCR image. A brand-new package is created private — make
supervisor-tool-dist public once in GitHub → your profile →
Packages → settings, or anonymous pulls return 403.
Copy install.sh / install.ps1 here from the repo's
install/ folder whenever they change — this service serves copies,
not the originals.