Installation
Homebrew (Recommended)
The easiest way to install Clanker CLI on macOS or Linux:
brew tap clankercloud/tap
brew install clankerThe Homebrew tap is maintained at clankercloud/homebrew-tap.
Requirements
- Go 1.21 or later -- Required only if building from source.
- AWS CLI v2 -- Required for AWS operations. Note that AWS CLI v1 is not supported because it does not recognize the
--no-cli-pagerflag, which Clanker uses to prevent interactive paging of AWS CLI output.
Build from Source
Clone the repository and build the binary:
git clone https://github.com/bgdnvk/clanker.git
cd clanker
make buildThis produces a binary at ./bin/clanker.
To install the binary to /usr/local/bin so it is available system-wide:
sudo make installFor development builds that place the binary in the current directory:
make devCross-Platform Builds
To build binaries for all supported platforms (Linux, macOS, and Windows on both amd64 and arm64):
make build-allThis produces tarballs and binaries for each platform combination in the ./bin/ directory.
Verify Installation
After installation, verify that Clanker is working:
clanker --versionYou should see output like:
clanker version v0.0.3Helper Binaries
Clanker delegates to external CLI tools for cloud provider operations. The aws CLI is required for AWS functionality. All other tools are optional and only needed if you plan to use the corresponding provider or feature.
aws (required for AWS)
The AWS CLI v2 is required for all AWS operations. Clanker uses it to execute AWS API calls, manage credentials, and interact with services like EC2, Lambda, S3, and EKS.
macOS:
brew install awscliLinux:
curl "https://awscli.amazonaws.com/awscli-exe-linux-x86_64.zip" -o "awscliv2.zip"
unzip awscliv2.zip
sudo ./aws/installOfficial docs: https://docs.aws.amazon.com/cli/latest/userguide/getting-started-install.html
After installation, configure at least one AWS profile:
aws configure --profile your-profile-nameterraform (optional)
Required for Terraform workspace queries and operations.
macOS:
brew install terraformLinux:
sudo apt-get update && sudo apt-get install -y gnupg software-properties-common
wget -O- https://apt.releases.hashicorp.com/gpg | gpg --dearmor | sudo tee /usr/share/keyrings/hashicorp-archive-keyring.gpg > /dev/null
echo "deb [signed-by=/usr/share/keyrings/hashicorp-archive-keyring.gpg] https://apt.releases.hashicorp.com $(lsb_release -cs) main" | sudo tee /etc/apt/sources.list.d/hashicorp.list
sudo apt-get update && sudo apt-get install terraformOfficial docs: https://developer.hashicorp.com/terraform/install
gh (optional, for GitHub)
Required for GitHub repository queries, pull request analysis, and workflow status.
macOS:
brew install ghLinux:
sudo apt install ghOr install via the official repository:
(type -p wget >/dev/null || (sudo apt update && sudo apt-get install wget -y)) \
&& sudo mkdir -p -m 755 /etc/apt/keyrings \
&& wget -qO- https://cli.github.com/packages/githubcli-archive-keyring.gpg | sudo tee /etc/apt/keyrings/githubcli-archive-keyring.gpg > /dev/null \
&& sudo chmod go+r /etc/apt/keyrings/githubcli-archive-keyring.gpg \
&& echo "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/githubcli-archive-keyring.gpg] https://cli.github.com/packages stable main" | sudo tee /etc/apt/sources.list.d/github-cli.list > /dev/null \
&& sudo apt update \
&& sudo apt install gh -yOfficial docs: https://cli.github.com/
gcloud (optional, for GCP)
Required for GCP infrastructure queries, GKE cluster management, and Cloud Run operations.
macOS:
brew install google-cloud-sdkLinux:
sudo snap install google-cloud-cli --classicOr install via the official script:
curl https://sdk.cloud.google.com | bash
exec -l $SHELL
gcloud initOfficial docs: https://cloud.google.com/sdk/docs/install
az (optional, for Azure)
Required for Azure infrastructure queries and Azure subscription management.
macOS:
brew install azure-cliLinux:
curl -sL https://aka.ms/InstallAzureCLIDeb | sudo bashOfficial docs: https://learn.microsoft.com/en-us/cli/azure/install-azure-cli
doctl (optional, for DigitalOcean)
Required for DigitalOcean infrastructure queries (Droplets, App Platform, Kubernetes).
macOS:
brew install doctlLinux:
sudo snap install doctlOfficial docs: https://docs.digitalocean.com/reference/doctl/how-to/install/
hcloud (optional, for Hetzner)
Required for Hetzner Cloud infrastructure queries.
macOS:
brew install hcloudLinux:
sudo apt install hcloud-cliOr install via the official binary:
wget https://github.com/hetznercloud/cli/releases/latest/download/hcloud-linux-amd64.tar.gz
tar -xzf hcloud-linux-amd64.tar.gz
sudo mv hcloud /usr/local/bin/Official docs: https://github.com/hetznercloud/cli
kubectl (optional, for Kubernetes)
Required for Kubernetes cluster management and the clanker k8s commands.
macOS:
brew install kubectlLinux:
sudo snap install kubectl --classicOr install directly:
curl -LO "https://dl.k8s.io/release/$(curl -L -s https://dl.k8s.io/release/stable.txt)/bin/linux/amd64/kubectl"
sudo install -o root -g root -m 0755 kubectl /usr/local/bin/kubectlOfficial docs: https://kubernetes.io/docs/tasks/tools/install-kubectl/
helm (optional, for Kubernetes Helm charts)
Required for deploying applications using Helm charts through the Kubernetes pipeline.
macOS:
brew install helmLinux:
sudo snap install helm --classicOr install via the official script:
curl https://raw.githubusercontent.com/helm/helm/main/scripts/get-helm-3 | bashOfficial docs: https://helm.sh/docs/intro/install/
eksctl (optional, for EKS cluster creation)
Required for creating and managing Amazon EKS clusters through Clanker.
macOS:
brew tap weaveworks/tap
brew install weaveworks/tap/eksctlLinux:
ARCH=amd64
PLATFORM=$(uname -s)_$ARCH
curl -sLO "https://github.com/eksctl-io/eksctl/releases/latest/download/eksctl_$PLATFORM.tar.gz"
tar -xzf eksctl_$PLATFORM.tar.gz -C /tmp && sudo mv /tmp/eksctl /usr/local/binOfficial docs: https://eksctl.io/installation/
Scanning for Available Credentials
After installing the helper binaries, you can use the config scan command to detect which credentials and CLI tools are available on your system:
clanker config scanThis will report on detected AWS profiles, GCP credentials, Azure subscriptions, Cloudflare tokens, DigitalOcean tokens, Hetzner tokens, and LLM API keys. For machine-readable output:
clanker config scan --output json