with one click
prereq-check
// Check that all required CLI tools are installed, meet minimum versions, and have active auth sessions. Shows platform-specific install commands for anything missing.
// Check that all required CLI tools are installed, meet minimum versions, and have active auth sessions. Shows platform-specific install commands for anything missing.
Analyze deployed Azure resource groups and generate detailed Mermaid architecture diagrams showing relationships between resources. Use for post-deployment visualization, understanding existing infrastructure, or documenting live Azure environments.
Onboard a repository, Azure subscription(s), and user identity for Git-Ape CI/CD using a skill-driven CLI playbook. Use for first-time setup of OIDC, federated credentials, RBAC, GitHub environments, and required secrets.
Estimate monthly costs for Azure resources by querying the Azure Retail Prices API. Parses ARM templates to identify resources, SKUs, and regions, then looks up real retail pricing. Produces a per-resource cost breakdown with monthly totals. Use during template generation or when user asks about costs.
Run preflight validation on ARM templates before deployment. Performs what-if analysis, permission checks, and generates a structured report with resource changes (create/modify/delete). Use before any deployment to preview changes and catch issues early.
Detect configuration drift between deployed Azure resources and stored deployment state. Compare actual Azure configuration against desired state in .azure/deployments/, identify differences, and guide user through reconciliation options. Use when checking for manual changes, policy remediations, or unauthorized modifications.
Run post-deployment integration tests for Azure resources. Verify Function Apps, Storage Accounts, Databases, App Services are healthy and accessible. Use after successful Azure deployment.
| name | prereq-check |
| description | Check that all required CLI tools are installed, meet minimum versions, and have active auth sessions. Shows platform-specific install commands for anything missing. |
| argument-hint | Run without arguments to check all prerequisites |
| user-invocable | true |
Validates the local environment has the CLI tools and auth sessions needed to run Git-Ape skills.
/git-ape-onboarding)| Tool | Binary | Minimum Version | Purpose |
|---|---|---|---|
| Azure CLI | az | 2.50 | Azure resource management, RBAC, deployments |
| GitHub CLI | gh | 2.0 | Repo secrets, environments, PR operations |
| jq | jq | 1.6 | JSON parsing in scripts and workflows |
| git | git | any | Version control (usually pre-installed) |
Run the steps below in order. Present results as a table. Stop at the first blocking failure.
OS="$(uname -s)"
ARCH="$(uname -m)"
echo "Platform: $OS / $ARCH"
Map the result for install instructions:
Darwin → macOSLinux → Linux (check for apt-get vs yum/dnf to narrow distro)MINGW* / MSYS* → Windows (git-bash)# --- az (Azure CLI) — required, minimum 2.50 ---
if command -v az &>/dev/null; then
AZ_VER=$(az version --query '"azure-cli"' -o tsv 2>/dev/null)
echo "az: $AZ_VER"
else
echo "az: NOT FOUND"
fi
# --- gh (GitHub CLI) — required, minimum 2.0 ---
if command -v gh &>/dev/null; then
GH_VER=$(gh --version 2>/dev/null | head -1 | grep -oE '[0-9]+\.[0-9]+\.[0-9]+')
echo "gh: $GH_VER"
else
echo "gh: NOT FOUND"
fi
# --- jq — required, minimum 1.6 ---
if command -v jq &>/dev/null; then
JQ_VER=$(jq --version 2>/dev/null | grep -oE '[0-9]+\.[0-9]+[a-z]*')
echo "jq: $JQ_VER"
else
echo "jq: NOT FOUND"
fi
# --- git — required (usually pre-installed) ---
if command -v git &>/dev/null; then
GIT_VER=$(git --version 2>/dev/null | grep -oE '[0-9]+\.[0-9]+\.[0-9]+')
echo "git: $GIT_VER"
else
echo "git: NOT FOUND"
fi
Show a table with pass/fail status:
| Tool | Status | Found Version | Minimum Required |
|---|---|---|---|
| az | ✅ / ❌ | x.y.z | 2.50 |
| gh | ✅ / ❌ | x.y.z | 2.0 |
| jq | ✅ / ❌ | x.y | 1.6 |
| git | ✅ / ❌ | x.y.z | any |
Mark a tool ❌ if it is missing OR below the minimum version.
Show install commands only for missing or outdated tools, matching the detected platform.
macOS (Homebrew):
brew install azure-cli # az
brew install gh # GitHub CLI
brew install jq # jq
brew install git # git (if missing)
Ubuntu / Debian:
# az — Microsoft repository
curl -sL https://aka.ms/InstallAzureCLIDeb | sudo bash
# gh — GitHub repository
(type -p wget >/dev/null || sudo apt-get install wget -y) \
&& sudo mkdir -p -m 755 /etc/apt/keyrings \
&& out=$(mktemp) && wget -nv -O"$out" https://cli.github.com/packages/githubcli-archive-keyring.gpg \
&& cat "$out" | 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-get update && sudo apt-get install gh -y
# jq
sudo apt-get install -y jq
RHEL / Fedora:
# az
sudo rpm --import https://packages.microsoft.com/keys/microsoft.asc
sudo dnf install -y azure-cli
# gh
sudo dnf install -y gh
# jq
sudo dnf install -y jq
Windows (PowerShell with winget):
winget install Microsoft.AzureCLI
winget install GitHub.cli
winget install jqlang.jq
Windows note: Git-Ape skills require a BASH shell. Install Git for Windows and use git-bash.
Only run this step if all tools passed Step 3.
# Azure CLI session
az account show --query "{name:name,id:id,tenantId:tenantId}" -o table 2>/dev/null
if [[ $? -ne 0 ]]; then
echo "❌ Not logged in to Azure. Run: az login"
fi
# GitHub CLI session
gh auth status 2>/dev/null
if [[ $? -ne 0 ]]; then
echo "❌ Not logged in to GitHub. Run: gh auth login"
fi
Present a final verdict:
az login and/or gh auth login./git-ape-onboarding).