Installation¶
Engineering Runtime is a single binary. It carries its own configuration, authoring specs, command cheatsheets and example capabilities inside it, so a fresh machine needs nothing else — no Go toolchain, no source checkout, no cloud CLI.
Requirements¶
| OS | macOS, Linux or Windows |
| Arch | amd64 or arm64 |
| Runtime deps | None. The binary is statically linked (CGO_ENABLED=0) |
| Optional | gh, git, kubectl, terraform, … — only for the Command Engine binaries you actually use |
Available artifacts¶
Releases are published to
kishore-gutta/engineering-runtime-releases.
Every release ships six archives plus a SHA256SUMS.txt:
| Platform | Arch | Archive |
|---|---|---|
| macOS | Apple Silicon | engineering-runtime-<version>-darwin-arm64.tar.gz |
| macOS | Intel | engineering-runtime-<version>-darwin-amd64.tar.gz |
| Linux | x86_64 | engineering-runtime-<version>-linux-amd64.tar.gz |
| Linux | arm64 | engineering-runtime-<version>-linux-arm64.tar.gz |
| Windows | x86_64 | engineering-runtime-<version>-windows-amd64.zip |
| Windows | arm64 | engineering-runtime-<version>-windows-arm64.zip |
Each archive contains the runtime binary plus README.md and LICENSE. It
also carries reference copies of commands/ and configs/ — those are for
browsing only. Nothing reads them at install time; the binary seeds its own
copies during Bootstrap.
The releases repository is private
A plain curl of a download URL will not work — it needs an authenticated
request. The examples below use the gh CLI, which is the simplest way to
do that. Without gh, download the archive from the Releases page in a
browser and skip to the extract step.
Install¶
VERSION=v0.5.2
ARCH=$([ "$(uname -m)" = "arm64" ] && echo arm64 || echo amd64)
ARCHIVE=engineering-runtime-$VERSION-darwin-$ARCH.tar.gz
cd ~/Downloads
gh release download $VERSION -R kishore-gutta/engineering-runtime-releases \
-p "$ARCHIVE" -p SHA256SUMS.txt --clobber
# Verify the download before trusting it
shasum -a 256 -c SHA256SUMS.txt --ignore-missing
tar -xzf "$ARCHIVE"
sudo mv engineering-runtime-$VERSION-darwin-$ARCH/runtime /usr/local/bin/runtime
sudo chmod +x /usr/local/bin/runtime
# macOS quarantines downloaded binaries — clear it, or the OS refuses to run it
sudo xattr -d com.apple.quarantine /usr/local/bin/runtime 2>/dev/null || true
runtime version
No sudo? Install into your home directory instead:
VERSION=v0.5.2
ARCH=$([ "$(uname -m)" = "aarch64" ] && echo arm64 || echo amd64)
ARCHIVE=engineering-runtime-$VERSION-linux-$ARCH.tar.gz
cd ~/Downloads
gh release download $VERSION -R kishore-gutta/engineering-runtime-releases \
-p "$ARCHIVE" -p SHA256SUMS.txt --clobber
sha256sum -c SHA256SUMS.txt --ignore-missing
tar -xzf "$ARCHIVE"
sudo install -m 0755 engineering-runtime-$VERSION-linux-$ARCH/runtime /usr/local/bin/runtime
runtime version
$Version = "v0.5.2"
$Arch = if ($env:PROCESSOR_ARCHITECTURE -eq "ARM64") { "arm64" } else { "amd64" }
$Archive = "engineering-runtime-$Version-windows-$Arch.zip"
cd ~\Downloads
gh release download $Version -R kishore-gutta/engineering-runtime-releases `
-p $Archive -p SHA256SUMS.txt --clobber
# Verify — compare against the matching line in SHA256SUMS.txt
Get-FileHash $Archive -Algorithm SHA256
Select-String -Path SHA256SUMS.txt -Pattern $Archive
Expand-Archive $Archive -DestinationPath . -Force
New-Item -ItemType Directory -Force "$env:LOCALAPPDATA\Programs\engineering-runtime" | Out-Null
Copy-Item "engineering-runtime-$Version-windows-$Arch\runtime.exe" `
"$env:LOCALAPPDATA\Programs\engineering-runtime\runtime.exe" -Force
# Add to PATH permanently — restart the terminal afterwards
setx PATH "$env:PATH;$env:LOCALAPPDATA\Programs\engineering-runtime"
runtime version
Windows SmartScreen may warn on first run because the binary is unsigned. Choose More info → Run anyway, or unblock it first:
Use the shared composite action from
engineering-runtime-samples,
which downloads, checksum-verifies and bootstraps in one step:
- uses: kishore-gutta/engineering-runtime-samples/.github/actions/setup-runtime@main
with:
runtime_github_token: ${{ secrets.RUNTIME_GITHUB_TOKEN }}
github_organization: my-org # optional — seeds Runtime Context
version: v0.5.2 # optional — empty installs latest
See CI/CD for the full job contract.
Always verify the checksum
The verification step is not optional ceremony. SHA256SUMS.txt is
published alongside every archive precisely so that a truncated download or
a tampered artifact fails loudly instead of silently installing.
Verify the install¶
runtime config validate is the single best "is my machine set up correctly"
check. It reports where your config, policy, context and capabilities live,
which auth providers are enabled and whether they actually authenticate, which
allowed binaries are installed, and any policy rule that can never match. It
modifies nothing.
Uninstall¶
Remove the binary and, if you want a clean slate, the Runtime Home:
Removing the Runtime Home discards your config.yaml, policy-config.yaml,
context.yaml, any capabilities you wrote, and the entire audit log. Back it
up first if any of that matters.
Next¶
- Quick Start — first governed operation in ten minutes
- Runtime Home — what Bootstrap created and who owns it
- Upgrading — what changes and what survives