Installing the CLI
One command on Linux, macOS or Windows, a checksum on every download, and how to update or remove it.
isogrid is a single executable with no dependencies. The platform serves it
itself, so you install it from the same address you will sign in to.
ISOGrid's API is https://api.isogrid.skyvault.pro, and every command below downloads
from it. The CLI page of the console
shows the same commands with a copy button, and links each build.
Linux and macOS
curl -fsSL https://api.isogrid.skyvault.pro/api/v1/cli/install.sh | sh
The script works out your system and processor, downloads the matching build,
checks it against the server's SHA256SUMS, and only then puts it in place.
On a checksum mismatch nothing is installed.
It installs to /usr/local/bin when you can write there, and to
~/.local/bin otherwise. To choose, set ISOGRID_INSTALL_DIR:
curl -fsSL https://api.isogrid.skyvault.pro/api/v1/cli/install.sh | ISOGRID_INSTALL_DIR="$HOME/bin" sh
If the directory is not on your PATH, the script says so and prints the line
to add to your profile.
The server writes its own address into the script it sends, so the one-liner
needs nothing else. If you saved the script and run it later, or it came from
somewhere else, set ISOGRID_API_URL to say where to download from.
Windows
In PowerShell 5.1 or 7:
irm https://api.isogrid.skyvault.pro/api/v1/cli/install.ps1 | iex
This installs isogrid.exe to %LOCALAPPDATA%\isogrid\bin, verifies it with
Get-FileHash, and adds that directory to your user PATH. Terminals opened
before the install do not see the new PATH; open a new one.
$env:ISOGRID_INSTALL_DIR and $env:ISOGRID_API_URL work as they do on Linux.
Only 64-bit x86 builds are published for Windows.
Downloading it yourself
If you would rather not pipe a script into a shell, the CLI page in the web
console links every build. You can also fetch one directly from
https://api.isogrid.skyvault.pro/api/v1/cli/downloads/<file>:
| File | For |
|---|---|
isogrid-linux-amd64 |
Linux, x86-64 |
isogrid-linux-arm64 |
Linux, ARM64 |
isogrid-darwin-amd64 |
macOS, Intel |
isogrid-darwin-arm64 |
macOS, Apple silicon |
isogrid-windows-amd64.exe |
Windows, x86-64 |
SHA256SUMS |
Checksums of every build |
manifest.json |
Version, build time, size and SHA-256 of each build |
https://api.isogrid.skyvault.pro/api/v1/cli/downloads (no file name) returns the
version and every build as JSON, which is the easiest way to script a download.
Verifying the download
Download SHA256SUMS beside the binary and check it before you run anything:
curl -fsSLO https://api.isogrid.skyvault.pro/api/v1/cli/downloads/isogrid-linux-amd64
curl -fsSLO https://api.isogrid.skyvault.pro/api/v1/cli/downloads/SHA256SUMS
sha256sum -c --ignore-missing SHA256SUMS
chmod +x isogrid-linux-amd64
sudo mv isogrid-linux-amd64 /usr/local/bin/isogrid
On macOS use shasum -a 256 -c --ignore-missing SHA256SUMS. On Windows:
(Get-FileHash .\isogrid-windows-amd64.exe -Algorithm SHA256).Hash
and compare it with the line for isogrid-windows-amd64.exe in SHA256SUMS.
A mismatch means do not run it. Download it again; if it still does not match, tell support rather than working around it.
Checking it works
isogrid version
isogrid login
The installer points a fresh CLI at the address it came from, so login needs
nothing else; an existing ~/.isogrid/config.json is left as it is. If you
installed the binary by hand, sign in once with
isogrid --api https://api.isogrid.skyvault.pro login: the address is remembered, and later
commands do not need --api.
See Command reference for what comes next.
Updating
isogrid update # download, verify, and replace this executable
isogrid update --check # only say whether a newer build exists
update fetches the build the platform offers for your system, checks it
against manifest.json, and replaces itself. --check exits 0 whether or not
there is an update, so it is safe in a script that only wants to report.
--force reinstalls even when the versions already match.
If the executable lives somewhere you cannot write to — /usr/local/bin
without root, or a package manager's directory — update cannot replace it.
Update it the way you installed it: run the installer again, or sudo the
manual steps above.
The CLI and the platform move together. When a command starts failing after a
platform upgrade, isogrid update is the first thing to try.
Building from source
The CLI is in the cli/ directory of the repository. No Go toolchain is needed
on your machine: every target runs in the golang:1.23-alpine container.
make build # ./dist/isogrid for Linux
make test vet # the test suite and go vet
make release # every platform, plus SHA256SUMS, manifest.json, installers and CI templates
make install # copy dist/isogrid to /usr/local/bin
Without make:
docker run --rm -v "$PWD:/src" -w /src golang:1.23-alpine sh scripts/release.sh v1.2.3
docker build -t isogrid-cli ./cli produces a minimal image if you would rather
run the CLI in a container.
Uninstalling
Sign out first, revoking the credential on the server, then delete the binary and its configuration:
isogrid logout --revoke
rm "$(command -v isogrid)"
rm -rf ~/.isogrid
On Windows:
isogrid logout --revoke
Remove-Item "$env:LOCALAPPDATA\isogrid" -Recurse -Force
Remove-Item "$env:USERPROFILE\.isogrid" -Recurse -Force
and remove %LOCALAPPDATA%\isogrid\bin from your user PATH in the system
settings.
Deleting the files does not revoke the credential. Without --revoke, a
copy of it that was taken from the machine keeps working until it expires. If
the machine is already gone, revoke it from the web console instead.
Edge cases worth knowing before you meet them
isogrid: command not found right after installing. The install directory
is not on your PATH yet. Add it as the installer suggested, or open a new
terminal on Windows.
"no API address" from the installer. You ran a copy of the script that did
not come from the platform directly. Set ISOGRID_API_URL and run it again.
"cannot write to /usr/local/bin". Set ISOGRID_INSTALL_DIR to a directory
you own, such as ~/.local/bin.
macOS refuses to open a manually downloaded binary. Files downloaded by a
browser are quarantined. The installer script avoids this; for a manual
download, run xattr -d com.apple.quarantine /usr/local/bin/isogrid.