agentleFS
Microsoft AzureKnown publisherAzure/git-ape/.github/skills/prereq-check/SKILL.md

prereq-check

Skill274 starsChanged 28 days agoMITView on GitHub

Validate Git-Ape CLI tool installation (az, gh, jq, git), versions, and auth sessions. Shows platform-specific install commands for anything missing. USE FOR: check Git-Ape prerequisites, what do I need to install for Git-Ape, verify Git-Ape CLI tools, az: command not found, gh: command not found, jq: command not found, git: command not found, az missing, gh missing, jq missing, git missing, fresh machine setup for Git-Ape, dev container setup for Git-Ape, before running git-ape-onboarding, az login required, gh auth login, auth expired, not logged in, outdated az version, minimum az version, upgrade az. DO NOT USE FOR: Anything else. This skill is narrowly scoped to prerequisites checks for Git-Ape's CLI tools and auth sessions. Do not use it for any other purpose.

  • Installs packages

The file

We split this skill into the rules it gives an agent

9 rules. About 0 are common, 3 are distinctive, and 6 are very specific to this project.

  • ≈0

    Common · estimate

    Many files like this have a rule of this kind.

  • ≈3

    Distinctive · estimate

    This author's own choices. Worth a look.

  • 6

    Very specific

    Tied to their project's names, files or tools. Probably skip.

  • Common
  • Distinctive
  • Very specific
  1. Very specific:

    Before first-time onboarding (/git-ape-onboarding)

    line 30
  2. Very specific:

    When any Git-Ape skill fails with command not found

    line 31
  3. Very specific:

    When the user reports a missing binary in their prompt (e.g., az: command not found)

    line 32
  4. Distinctive:

    After switching machines, shells, or dev containers

    line 33
  5. Distinctive:

    When the user asks "what do I need to install?"

    line 34
  6. Distinctive:

    Stop at the first blocking failure

    line 127
  7. Very specific:

    Verify with command -v <tool> + <tool> --version after suggested fixes

    line 128
  8. Very specific:

    Run brew install, apt-get install, winget install, or any state-changing command

    line 132
  9. Very specific:

    After a ✅ READY verdict, render this line verbatim so the chat surface turns it into a clickable handoff:

    line 141

≈ “Common” is an estimate: at least 1 in 5 of the 350,495 skill files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.

Keep what fits and drop the rest. Your version, ready for your agents.
Files
SKILL.md

Prerequisites Check

Validate that the local environment has the CLI tools and auth sessions needed to run Git-Ape skills. Print platform-specific install commands and PATH-repair guidance for anything missing or version-stale.

Quick Reference

PropertyValue
Best forFirst-time setup, command not found triage, dev container validation
Required binariesaz ≥ 2.50, gh ≥ 2.0, jq ≥ 1.6, git (any)
Required authaz login, gh auth login
Shellbash on macOS/Linux, PowerShell 7+ on Windows
MCP toolsNone — runs locally via shell
Related skillsgit-ape-onboarding (next step), azure-validate (deployment-time checks)
Side effectsRead-only — never installs or modifies anything

When to Use

  • Before first-time onboarding (/git-ape-onboarding)
  • When any Git-Ape skill fails with command not found
  • When the user reports a missing binary in their prompt (e.g., az: command not found)
  • After switching machines, shells, or dev containers
  • When the user asks "what do I need to install?"

Rules

  1. Run read-only — never brew install, apt-get install, or any state-changing command. Print the commands; the user runs them.
  2. Trust user reports — if the user reports a tool missing, treat it as ⚠️ even when this terminal can find it (different shell, PATH, container, or machine).
  3. Stop at first blocking failure — do not continue to auth checks while any tool is ❌.
  4. Do not chain into other skills — never auto-invoke git-ape-onboarding; tell the user to run it after READY.

Steps

#ActionReference
1Detect Platform — uname -s / uname -m on bash, $PSVersionTable.OS on PowerShell → macOS / Linux (apt vs dnf) / Windows (PowerShell 7+)inline
2Scan Prompt for Reported Missing Tools — match <tool>: command not found, command not found: <tool>, <tool> is not installedinline
3Run Tool Check — macOS/Linux: bash scripts/check-tools.sh · Windows: pwsh -File scripts/check-tools.ps1scripts/check-tools.sh, scripts/check-tools.ps1
4Present Status Table — pass/fail with found vs. minimum versionSee Status Table
5Show Install / PATH Repair — only for ❌ and ⚠️ entries, scoped to platformreferences/install-commands.md
6Check Auth Sessions — only if Step 4 reports all tools ✅See Auth Checks
7Emit Verdict — exactly one of READY / TOOLS MISSING / REPORTED MISSING / AUTH MISSINGSee Outputs

Status Table

scripts/check-tools.sh emits TSV rows of tool<TAB>status<TAB>found<TAB>minimum. Render them as:

ToolStatusFoundRequired
az✅ / ⚠️ / ❌x.y.z2.50
gh✅ / ⚠️ / ❌x.y.z2.0
jq✅ / ⚠️ / ❌x.y1.6
git✅ / ❌x.y.zany

Status mapping:

  • OK → ✅
  • OUTDATED or MISSING → ❌
  • Reported missing in Step 2 but OK in this terminal → ⚠️ with note reported missing by user

Auth Checks

macOS / Linux (bash):

az account show --query "{name:name,id:id,tenantId:tenantId}" -o table 2>/dev/null \
  || echo "❌ Not logged in to Azure. Run: az login"

gh auth status 2>/dev/null \
  || echo "❌ Not logged in to GitHub. Run: gh auth login"

Windows (PowerShell 7+):

az account show --query "{name:name,id:id,tenantId:tenantId}" -o table 2>$null
if (-not $?) { Write-Output "❌ Not logged in to Azure. Run: az login" }

gh auth status 2>$null
if (-not $?) { Write-Output "❌ Not logged in to GitHub. Run: gh auth login" }

Outputs

A single chat message containing:

  1. Status table from Step 4.
  2. Install / PATH repair commands for ❌ and ⚠️ entries — pulled from references/install-commands.md, scoped to the detected platform.
  3. Auth status (Azure subscription + GitHub user) from Step 6, only when all tools ✅.
  4. Final verdict — exactly one of:
    • ✅ READY — all tools installed, versions OK, auth sessions active. Render the handoff chip from ## Next so the user can click into onboarding.
    • ⚠️ TOOLS MISSING — list what to install. Do not continue.
    • ⚠️ REPORTED MISSING — this terminal finds the tool but the user reported it missing. Print install / PATH repair + verification block.
    • ⚠️ AUTH MISSING — tools OK but az login and/or gh auth login required.

Error Handling

ErrorCauseFix
az --version hangsStale telemetry / extension cacheaz config set core.collect_telemetry=false; reinstall if persistent
gh auth status says "not logged into any hosts"No GitHub sessiongh auth login --web
az account show returns Please run 'az login'Expired or missing sessionaz login (use --use-device-code in headless shells)
User reports missing tool but this terminal finds itDifferent shell / PATH / container / machineTreat as ⚠️ REPORTED MISSING — print install + PATH repair, do not contradict
jq --version starts with 1.5Below minimum (1.6)Upgrade via platform package manager
check-tools.sh: Permission deniedScript not executablechmod +x .github/skills/prereq-check/scripts/check-tools.sh
check-tools.ps1 cannot be loaded because running scripts is disabledPowerShell execution policyRun via pwsh -File scripts/check-tools.ps1 (bypasses script-block policy), or Set-ExecutionPolicy -Scope Process RemoteSigned
pwsh: command not found on WindowsPowerShell 7+ not installedwinget install Microsoft.PowerShell — Windows PowerShell 5.1 also works but ship pwsh for parity

Constraints

Always:

  • Print install commands; let the user run them
  • Detect platform before printing recipes
  • Honor user-reported missing tools even when this terminal finds them
  • Stop at the first blocking failure
  • Verify with command -v <tool> + <tool> --version after suggested fixes

Never:

  • Run brew install, apt-get install, winget install, or any state-changing command
  • Require git-bash on Windows — use the PowerShell script (scripts/check-tools.ps1) instead
  • Auto-invoke git-ape-onboarding after a READY verdict
  • Silently drop a reported-missing tool because this terminal finds it
  • Continue to auth checks while any tool is ❌
  • Recommend sudo on macOS (Homebrew handles non-root install)

Next

After a ✅ READY verdict, render this line verbatim so the chat surface turns it into a clickable handoff:

Next: @Git-Ape Onboarding — or run /git-ape-onboarding to start setup.

VS Code Copilot Chat renders @AgentName mentions and /skill-name slash commands as clickable chips — the user clicks once to dispatch. Do not auto-invoke (Rule 4).

For deployment-time validation of an Azure project, use azure-validate instead.

Download now (ZIP)

Does it work?

Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.

No reviews yet

People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.

  • It worked
  • Partly
  • It didn't
What did you use it for? e.g. Reviewing pull requests in a Rails app

Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.

Your trail

Files you open will collect here, so you can find them again.

Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.

Now do this for your own.

Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.