Installation
Install standalone (recommended)
Section titled “Install standalone (recommended)”The fastest way to install Archgate. No Node.js or package manager required:
# macOS / Linuxcurl -fsSL https://cli.archgate.dev/install-unix | sh
# Windowswinget install --id 9MSZ1ZDKSW8Z
# Windows (Git Bash / MSYS2)curl -fsSL https://cli.archgate.dev/install-unix | shOn macOS and Linux, the installer downloads a pre-built binary for your platform and installs it to ~/.archgate/bin/. It detects your shell profiles and offers to add the directory to your PATH.
On Windows, winget installs Archgate from the Microsoft Store. The package is signed by Microsoft and puts archgate on your PATH in every new terminal. Update it with winget upgrade --id 9MSZ1ZDKSW8Z.
Install via PowerShell script (Windows)
Section titled “Install via PowerShell script (Windows)”irm https://cli.archgate.dev/install-windows | iexThe script runs the same winget install for you. Where winget is missing or the Microsoft Store is blocked, it downloads the binary from GitHub Releases to ~/.archgate/bin/ and offers to add that directory to your PATH, including in Git Bash shell profiles (.bashrc, .bash_profile, .profile). The downloaded binary is not code-signed.
Both installer scripts read these environment variables:
| Variable | Description | Default |
|---|---|---|
ARCHGATE_VERSION | Install a specific version (e.g. v0.11.2) | Latest release |
ARCHGATE_INSTALL_DIR | Custom install directory | ~/.archgate/bin |
ARCHGATE_NO_WINGET | Set to 1 to skip winget and download directly (Windows) | Unset |
winget installs neither a pinned version nor into a chosen directory, so setting ARCHGATE_VERSION or ARCHGATE_INSTALL_DIR on Windows also selects the direct download.
You can also download binaries directly from GitHub Releases.
Install via npm
Section titled “Install via npm”Install Archgate globally using your preferred Node.js package manager:
# npmnpm install -g archgate
# Bunbun install -g archgate
# Yarnyarn global add archgate
# pnpmpnpm add -g archgateThis installs a lightweight wrapper that delegates to a platform-specific binary. The CLI itself is a standalone binary compiled with Bun. Node.js is only needed for the npm/yarn/pnpm wrapper.
Install as a dev dependency
Section titled “Install as a dev dependency”You can also add Archgate as a dev dependency in your project and run it through your package manager’s script runner. This is useful for pinning a specific version per project or running checks in CI without a global install.
# npmnpm install -D archgate
# Bunbun add -d archgate
# Yarnyarn add -D archgate
# pnpmpnpm add -D archgateThen run Archgate via your package manager:
# npm / Yarn / pnpmnpx archgate check
# Bunbun run archgate checkOr add a script to your package.json:
{ "scripts": { "check:adrs": "archgate check" } }# Works with any package managernpm run check:adrsbun run check:adrsyarn check:adrspnpm check:adrsInstall via pip (Python)
Section titled “Install via pip (Python)”Install Archgate globally using pip or pipx:
# pippip install archgate
# pipx (recommended for CLI tools)pipx install archgateThis installs a lightweight Python wrapper that delegates to a platform-specific binary. Python 3.8+ is required.
Install via dotnet
Section titled “Install via dotnet”Install Archgate as a .NET global tool:
dotnet tool install -g archgateRequires .NET 8.0+ SDK. The tool downloads the platform binary on first run.
Install via Go
Section titled “Install via Go”Install Archgate using go install:
go install github.com/archgate/cli/shims/go/cmd/archgate@latestRequires Go 1.21+. The compiled Go wrapper downloads the platform binary on first run.
Install via RubyGems
Section titled “Install via RubyGems”Install Archgate as a Ruby gem:
gem install archgateRequires Ruby 2.7+. The gem downloads the platform binary on first run.
Install via Maven / jbang (Java)
Section titled “Install via Maven / jbang (Java)”Install Archgate using jbang:
jbang app install archgate@dev.archgateOr download the latest executable JAR from Maven Central (dev.archgate:archgate-cli) and run it directly:
java -jar archgate-cli-<version>.jar checkRequires Java 11+. The shim downloads the platform binary on first run.
Platform support
Section titled “Platform support”Archgate ships pre-built binaries for the following platforms:
| Platform | Architecture | Artifact |
|---|---|---|
| macOS | arm64 | archgate-darwin-arm64 |
| Linux | x86_64 | archgate-linux-x64 |
| Windows | x86_64 | archgate-win32-x64 |
The correct binary is downloaded automatically from GitHub Releases on first run and cached to ~/.archgate/bin/.
Verify installation
Section titled “Verify installation”archgate --versionYou should see the installed version printed to stdout.
Install via proto
Section titled “Install via proto”If you use proto (moonrepo’s toolchain manager), you can install Archgate directly as a proto plugin. No Node.js or npm required.
Add the plugin to your .prototools:
[plugins.tools]archgate = "github://archgate/proto-plugin"Then install and use it like any other proto tool:
proto install archgatearchgate checkProto manages the binary for you, including version pinning and auto-installation. To pin a specific version, add it at the root of .prototools:
archgate = "0.15.0"
[plugins.tools]archgate = "github://archgate/proto-plugin"You can also list available versions and manage installations with proto commands:
proto list-remote archgate # list available versionsproto install archgate 0.15.0 # install a specific versionproto pin archgate 0.15.0 # pin version in .prototoolsNext steps
Section titled “Next steps”Once installed, run archgate init in your project to set up linting and guardrails. See the Quick Start guide for a walkthrough.