{
  "schemaVersion": "1.0",
  "item": {
    "slug": "azure-cli",
    "name": "azure-cli",
    "source": "tencent",
    "type": "skill",
    "category": "开发工具",
    "sourceUrl": "https://clawhub.ai/ddevaal/azure-cli",
    "canonicalUrl": "https://clawhub.ai/ddevaal/azure-cli",
    "targetPlatform": "OpenClaw"
  },
  "install": {
    "downloadMode": "redirect",
    "downloadUrl": "/downloads/azure-cli",
    "sourceDownloadUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=azure-cli",
    "sourcePlatform": "tencent",
    "targetPlatform": "OpenClaw",
    "installMethod": "Manual import",
    "extraction": "Extract archive",
    "prerequisites": [
      "OpenClaw"
    ],
    "packageFormat": "ZIP package",
    "includedAssets": [
      "README.md",
      "SKILL.md",
      "scripts/azure-storage-analysis.sh",
      "scripts/azure-rg-deploy.sh",
      "scripts/azure-vm-status.sh",
      "scripts/azure-resource-cleanup.sh"
    ],
    "primaryDoc": "SKILL.md",
    "quickSetup": [
      "Download the package from Yavira.",
      "Extract the archive and review SKILL.md first.",
      "Import or place the package into your OpenClaw setup."
    ],
    "agentAssist": {
      "summary": "Hand the extracted package to your coding agent with a concrete install brief instead of figuring it out manually.",
      "steps": [
        "Download the package from Yavira.",
        "Extract it into a folder your agent can access.",
        "Paste one of the prompts below and point your agent at the extracted folder."
      ],
      "prompts": [
        {
          "label": "New install",
          "body": "I downloaded a skill package from Yavira. Read SKILL.md from the extracted folder and install it by following the included instructions. Then review README.md for any prerequisites, environment setup, or post-install checks. Tell me what you changed and call out any manual steps you could not complete."
        },
        {
          "label": "Upgrade existing",
          "body": "I downloaded an updated skill package from Yavira. Read SKILL.md from the extracted folder, compare it with my current installation, and upgrade it while preserving any custom configuration unless the package docs explicitly say otherwise. Then review README.md for any prerequisites, environment setup, or post-install checks. Summarize what changed and any follow-up checks I should run."
        }
      ]
    },
    "sourceHealth": {
      "source": "tencent",
      "slug": "azure-cli",
      "status": "healthy",
      "reason": "direct_download_ok",
      "recommendedAction": "download",
      "checkedAt": "2026-05-11T16:25:06.819Z",
      "expiresAt": "2026-05-18T16:25:06.819Z",
      "httpStatus": 200,
      "finalUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=azure-cli",
      "contentType": "application/zip",
      "probeMethod": "head",
      "details": {
        "probeUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=azure-cli",
        "contentDisposition": "attachment; filename=\"azure-cli-1.0.0.zip\"",
        "redirectLocation": null,
        "bodySnippet": null,
        "slug": "azure-cli"
      },
      "scope": "item",
      "summary": "Item download looks usable.",
      "detail": "Yavira can redirect you to the upstream package for this item.",
      "primaryActionLabel": "Download for OpenClaw",
      "primaryActionHref": "/downloads/azure-cli"
    },
    "validation": {
      "installChecklist": [
        "Use the Yavira download entry.",
        "Review SKILL.md after the package is downloaded.",
        "Confirm the extracted package contains the expected setup assets."
      ],
      "postInstallChecks": [
        "Confirm the extracted package includes the expected docs or setup files.",
        "Validate the skill or prompts are available in your target agent workspace.",
        "Capture any manual follow-up steps the agent could not complete."
      ]
    },
    "downloadPageUrl": "https://openagent3.xyz/downloads/azure-cli",
    "agentPageUrl": "https://openagent3.xyz/skills/azure-cli/agent",
    "manifestUrl": "https://openagent3.xyz/skills/azure-cli/agent.json",
    "briefUrl": "https://openagent3.xyz/skills/azure-cli/agent.md"
  },
  "agentAssist": {
    "summary": "Hand the extracted package to your coding agent with a concrete install brief instead of figuring it out manually.",
    "steps": [
      "Download the package from Yavira.",
      "Extract it into a folder your agent can access.",
      "Paste one of the prompts below and point your agent at the extracted folder."
    ],
    "prompts": [
      {
        "label": "New install",
        "body": "I downloaded a skill package from Yavira. Read SKILL.md from the extracted folder and install it by following the included instructions. Then review README.md for any prerequisites, environment setup, or post-install checks. Tell me what you changed and call out any manual steps you could not complete."
      },
      {
        "label": "Upgrade existing",
        "body": "I downloaded an updated skill package from Yavira. Read SKILL.md from the extracted folder, compare it with my current installation, and upgrade it while preserving any custom configuration unless the package docs explicitly say otherwise. Then review README.md for any prerequisites, environment setup, or post-install checks. Summarize what changed and any follow-up checks I should run."
      }
    ]
  },
  "documentation": {
    "source": "clawhub",
    "primaryDoc": "SKILL.md",
    "sections": [
      {
        "title": "Azure CLI Skill",
        "body": "Master the Azure command-line interface for cloud infrastructure management, automation, and DevOps workflows.\n\nAzure CLI is Microsoft's powerful cross-platform command-line tool for managing Azure resources. This skill provides comprehensive knowledge of Azure CLI commands, authentication, resource management, and automation patterns."
      },
      {
        "title": "Core Concepts",
        "body": "Azure subscription and resource group architecture\nAuthentication methods and credential management\nResource Provider organization and registration\nGlobal parameters, output formatting, and query syntax\nAutomation scripting and error handling"
      },
      {
        "title": "Major Service Areas (66 command modules)",
        "body": "Compute: Virtual Machines, Scale Sets, Kubernetes (AKS), Containers\nNetworking: Virtual Networks, Load Balancers, CDN, Traffic Manager\nStorage & Data: Storage Accounts, Data Lake, Cosmos DB, Databases\nApplication Services: App Service, Functions, Container Apps\nDatabases: SQL Server, MySQL, PostgreSQL, CosmosDB\nIntegration & Messaging: Event Hubs, Service Bus, Logic Apps\nMonitoring & Management: Azure Monitor, Policy, RBAC, Cost Management\nAI & Machine Learning: Cognitive Services, Machine Learning\nDevOps: Azure DevOps, Pipelines, Extensions"
      },
      {
        "title": "Installation",
        "body": "macOS:\n\nbrew install azure-cli\n\nLinux (Ubuntu/Debian):\n\ncurl -sL https://aka.ms/InstallAzureCliLinux | bash\n\nWindows:\n\nchoco install azure-cli\n# Or download MSI from https://aka.ms/InstallAzureCliWindowsMSI\n\nVerify Installation:\n\naz --version          # Show version\naz --help             # Show general help"
      },
      {
        "title": "First Steps",
        "body": "# 1. Login to Azure (opens browser for authentication)\naz login\n\n# 2. View your subscriptions\naz account list\n\n# 3. Set default subscription (optional)\naz account set --subscription \"My Subscription\"\n\n# 4. Create a resource group\naz group create -g myResourceGroup -l eastus\n\n# 5. List your resource groups\naz group list"
      },
      {
        "title": "Authentication & Accounts",
        "body": "az login                                    # Interactive login\naz login --service-principal -u APP_ID -p PASSWORD -t TENANT_ID\naz login --identity                         # Managed identity\naz logout                                   # Sign out\naz account show                             # Current account\naz account list                             # All accounts\naz account set --subscription SUBSCRIPTION  # Set default"
      },
      {
        "title": "Global Flags (Use with Any Command)",
        "body": "--subscription ID       # Target subscription\n--resource-group -g RG  # Target resource group\n--output -o json|table|tsv|yaml  # Output format\n--query JMESPATH_QUERY  # Filter/extract output\n--verbose -v            # Verbose output\n--debug                 # Debug mode\n--help -h               # Command help"
      },
      {
        "title": "Resource Groups",
        "body": "az group list           # List all resource groups\naz group create -g RG -l LOCATION  # Create\naz group delete -g RG   # Delete\naz group show -g RG     # Get details\naz group update -g RG --tags key=value  # Update tags"
      },
      {
        "title": "Virtual Machines (Compute)",
        "body": "az vm create -g RG -n VM_NAME --image UbuntuLTS\naz vm list -g RG\naz vm show -g RG -n VM_NAME\naz vm start -g RG -n VM_NAME\naz vm stop -g RG -n VM_NAME\naz vm restart -g RG -n VM_NAME\naz vm delete -g RG -n VM_NAME"
      },
      {
        "title": "Storage Operations",
        "body": "az storage account create -g RG -n ACCOUNT --sku Standard_LRS\naz storage account list\naz storage container create --account-name ACCOUNT -n CONTAINER\naz storage blob upload --account-name ACCOUNT -c CONTAINER -n BLOB -f LOCAL_FILE\naz storage blob download --account-name ACCOUNT -c CONTAINER -n BLOB -f LOCAL_FILE"
      },
      {
        "title": "Azure Kubernetes Service (AKS)",
        "body": "az aks create -g RG -n CLUSTER --node-count 2\naz aks get-credentials -g RG -n CLUSTER\naz aks list\naz aks show -g RG -n CLUSTER\naz aks delete -g RG -n CLUSTER"
      },
      {
        "title": "Pattern 1: Output Formatting",
        "body": "# Get only specific fields\naz vm list --query \"[].{name: name, state: powerState}\"\n\n# Get just the names\naz vm list --query \"[].name\" -o tsv\n\n# Filter and extract\naz vm list --query \"[?powerState=='VM running'].name\""
      },
      {
        "title": "Pattern 2: Automation & Scripting",
        "body": "#!/bin/bash\nset -e  # Exit on error\n\n# Get VM ID\nVM_ID=$(az vm create \\\n  -g myRG \\\n  -n myVM \\\n  --image UbuntuLTS \\\n  --query id \\\n  --output tsv)\n\necho \"Created VM: $VM_ID\"\n\n# Check provisioning state\naz vm show --ids \"$VM_ID\" --query provisioningState"
      },
      {
        "title": "Pattern 3: Batch Operations",
        "body": "# Delete all VMs in a resource group\naz vm list -g myRG -d --query \"[].id\" -o tsv | xargs az vm delete --ids\n\n# List all resources by tag\naz resource list --tag env=production"
      },
      {
        "title": "Pattern 4: Using Defaults",
        "body": "# Set defaults to reduce typing\naz configure --defaults group=myRG subscription=mySubscription location=eastus\n\n# Now commands are simpler\naz vm create -n myVM --image UbuntuLTS  # group, subscription, location inherited"
      },
      {
        "title": "Helper Scripts",
        "body": "This skill includes helper bash scripts for common operations:\n\nazure-vm-status.sh — Check VM status across subscription\nazure-resource-cleanup.sh — Identify and remove unused resources\nazure-storage-analysis.sh — Analyze storage account usage and costs\nazure-subscription-info.sh — Get subscription quotas and limits\nazure-rg-deploy.sh — Deploy infrastructure with monitoring\n\nUsage:\n\n./scripts/azure-vm-status.sh -g myResourceGroup\n./scripts/azure-storage-analysis.sh --subscription mySubscription"
      },
      {
        "title": "Output Querying with JMESPath",
        "body": "Azure CLI supports powerful output filtering using JMESPath:\n\n# Sort results\naz vm list --query \"sort_by([], &name)\"\n\n# Complex filtering\naz vm list --query \"[?location=='eastus' && powerState=='VM running'].name\"\n\n# Aggregation\naz vm list --query \"length([])\"  # Count VMs"
      },
      {
        "title": "Error Handling",
        "body": "# Check exit codes\naz vm create -g RG -n VM --image UbuntuLTS\nif [ $? -eq 0 ]; then\n  echo \"VM created successfully\"\nelse\n  echo \"Failed to create VM\"\n  exit 1\nfi"
      },
      {
        "title": "Authentication Methods",
        "body": "Service Principal (Automation):\n\naz login --service-principal \\\n  --username $AZURE_CLIENT_ID \\\n  --password $AZURE_CLIENT_SECRET \\\n  --tenant $AZURE_TENANT_ID\n\nManaged Identity (Azure Resources):\n\n# On an Azure VM or Container Instance\naz login --identity\n\nToken-based (CI/CD):\n\necho \"$AZURE_ACCESS_TOKEN\" | az login --service-principal -u $AZURE_CLIENT_ID --password-stdin --tenant $AZURE_TENANT_ID"
      },
      {
        "title": "Key Resources",
        "body": "Official Documentation: https://learn.microsoft.com/en-us/cli/azure/\nCommand Reference: https://learn.microsoft.com/en-us/cli/azure/reference-index\nGitHub Repository: https://github.com/Azure/azure-cli\nComprehensive Guide: See references/REFERENCE.md\nRelease Notes: https://github.com/Azure/azure-cli/releases"
      },
      {
        "title": "Tips & Tricks",
        "body": "Enable Tab Completion:\n# macOS with Homebrew\neval \"$(az completion init zsh)\"\n\n# Linux (bash)\neval \"$(az completion init bash)\"\n\n\n\nFind Commands Quickly:\naz find \"create virtual machine\"  # Search for commands\n\n\n\nUse --no-wait for Long Operations:\naz vm create -g RG -n VM --image UbuntuLTS --no-wait\n# Check status later with az vm show\n\n\n\nSave Frequently Used Parameters:\naz configure --defaults group=myRG location=eastus\n\n\n\nCombine with Other Tools:\n# Use with jq for advanced JSON processing\naz vm list | jq '.[] | select(.powerState == \"VM running\") | .name'\n\n# Use with xargs for batch operations\naz storage account list --query \"[].name\" -o tsv | xargs -I {} az storage account show -g RG -n {}"
      },
      {
        "title": "Next Steps",
        "body": "Review references/REFERENCE.md for comprehensive command documentation\nExplore helper scripts in the scripts/ directory\nPractice with non-production resources first\nReview Azure best practices and cost optimization strategies\n\nVersion: 1.0.0\nLicense: MIT\nCompatible with: Azure CLI v2.50+, Azure Subscription"
      }
    ],
    "body": "Azure CLI Skill\n\nMaster the Azure command-line interface for cloud infrastructure management, automation, and DevOps workflows.\n\nAzure CLI is Microsoft's powerful cross-platform command-line tool for managing Azure resources. This skill provides comprehensive knowledge of Azure CLI commands, authentication, resource management, and automation patterns.\n\nWhat You'll Learn\nCore Concepts\nAzure subscription and resource group architecture\nAuthentication methods and credential management\nResource Provider organization and registration\nGlobal parameters, output formatting, and query syntax\nAutomation scripting and error handling\nMajor Service Areas (66 command modules)\nCompute: Virtual Machines, Scale Sets, Kubernetes (AKS), Containers\nNetworking: Virtual Networks, Load Balancers, CDN, Traffic Manager\nStorage & Data: Storage Accounts, Data Lake, Cosmos DB, Databases\nApplication Services: App Service, Functions, Container Apps\nDatabases: SQL Server, MySQL, PostgreSQL, CosmosDB\nIntegration & Messaging: Event Hubs, Service Bus, Logic Apps\nMonitoring & Management: Azure Monitor, Policy, RBAC, Cost Management\nAI & Machine Learning: Cognitive Services, Machine Learning\nDevOps: Azure DevOps, Pipelines, Extensions\nQuick Start\nInstallation\n\nmacOS:\n\nbrew install azure-cli\n\n\nLinux (Ubuntu/Debian):\n\ncurl -sL https://aka.ms/InstallAzureCliLinux | bash\n\n\nWindows:\n\nchoco install azure-cli\n# Or download MSI from https://aka.ms/InstallAzureCliWindowsMSI\n\n\nVerify Installation:\n\naz --version          # Show version\naz --help             # Show general help\n\nFirst Steps\n# 1. Login to Azure (opens browser for authentication)\naz login\n\n# 2. View your subscriptions\naz account list\n\n# 3. Set default subscription (optional)\naz account set --subscription \"My Subscription\"\n\n# 4. Create a resource group\naz group create -g myResourceGroup -l eastus\n\n# 5. List your resource groups\naz group list\n\nEssential Commands\nAuthentication & Accounts\naz login                                    # Interactive login\naz login --service-principal -u APP_ID -p PASSWORD -t TENANT_ID\naz login --identity                         # Managed identity\naz logout                                   # Sign out\naz account show                             # Current account\naz account list                             # All accounts\naz account set --subscription SUBSCRIPTION  # Set default\n\nGlobal Flags (Use with Any Command)\n--subscription ID       # Target subscription\n--resource-group -g RG  # Target resource group\n--output -o json|table|tsv|yaml  # Output format\n--query JMESPATH_QUERY  # Filter/extract output\n--verbose -v            # Verbose output\n--debug                 # Debug mode\n--help -h               # Command help\n\nResource Groups\naz group list           # List all resource groups\naz group create -g RG -l LOCATION  # Create\naz group delete -g RG   # Delete\naz group show -g RG     # Get details\naz group update -g RG --tags key=value  # Update tags\n\nVirtual Machines (Compute)\naz vm create -g RG -n VM_NAME --image UbuntuLTS\naz vm list -g RG\naz vm show -g RG -n VM_NAME\naz vm start -g RG -n VM_NAME\naz vm stop -g RG -n VM_NAME\naz vm restart -g RG -n VM_NAME\naz vm delete -g RG -n VM_NAME\n\nStorage Operations\naz storage account create -g RG -n ACCOUNT --sku Standard_LRS\naz storage account list\naz storage container create --account-name ACCOUNT -n CONTAINER\naz storage blob upload --account-name ACCOUNT -c CONTAINER -n BLOB -f LOCAL_FILE\naz storage blob download --account-name ACCOUNT -c CONTAINER -n BLOB -f LOCAL_FILE\n\nAzure Kubernetes Service (AKS)\naz aks create -g RG -n CLUSTER --node-count 2\naz aks get-credentials -g RG -n CLUSTER\naz aks list\naz aks show -g RG -n CLUSTER\naz aks delete -g RG -n CLUSTER\n\nCommon Patterns\nPattern 1: Output Formatting\n# Get only specific fields\naz vm list --query \"[].{name: name, state: powerState}\"\n\n# Get just the names\naz vm list --query \"[].name\" -o tsv\n\n# Filter and extract\naz vm list --query \"[?powerState=='VM running'].name\"\n\nPattern 2: Automation & Scripting\n#!/bin/bash\nset -e  # Exit on error\n\n# Get VM ID\nVM_ID=$(az vm create \\\n  -g myRG \\\n  -n myVM \\\n  --image UbuntuLTS \\\n  --query id \\\n  --output tsv)\n\necho \"Created VM: $VM_ID\"\n\n# Check provisioning state\naz vm show --ids \"$VM_ID\" --query provisioningState\n\nPattern 3: Batch Operations\n# Delete all VMs in a resource group\naz vm list -g myRG -d --query \"[].id\" -o tsv | xargs az vm delete --ids\n\n# List all resources by tag\naz resource list --tag env=production\n\nPattern 4: Using Defaults\n# Set defaults to reduce typing\naz configure --defaults group=myRG subscription=mySubscription location=eastus\n\n# Now commands are simpler\naz vm create -n myVM --image UbuntuLTS  # group, subscription, location inherited\n\nHelper Scripts\n\nThis skill includes helper bash scripts for common operations:\n\nazure-vm-status.sh — Check VM status across subscription\nazure-resource-cleanup.sh — Identify and remove unused resources\nazure-storage-analysis.sh — Analyze storage account usage and costs\nazure-subscription-info.sh — Get subscription quotas and limits\nazure-rg-deploy.sh — Deploy infrastructure with monitoring\n\nUsage:\n\n./scripts/azure-vm-status.sh -g myResourceGroup\n./scripts/azure-storage-analysis.sh --subscription mySubscription\n\nAdvanced Topics\nOutput Querying with JMESPath\n\nAzure CLI supports powerful output filtering using JMESPath:\n\n# Sort results\naz vm list --query \"sort_by([], &name)\"\n\n# Complex filtering\naz vm list --query \"[?location=='eastus' && powerState=='VM running'].name\"\n\n# Aggregation\naz vm list --query \"length([])\"  # Count VMs\n\nError Handling\n# Check exit codes\naz vm create -g RG -n VM --image UbuntuLTS\nif [ $? -eq 0 ]; then\n  echo \"VM created successfully\"\nelse\n  echo \"Failed to create VM\"\n  exit 1\nfi\n\nAuthentication Methods\n\nService Principal (Automation):\n\naz login --service-principal \\\n  --username $AZURE_CLIENT_ID \\\n  --password $AZURE_CLIENT_SECRET \\\n  --tenant $AZURE_TENANT_ID\n\n\nManaged Identity (Azure Resources):\n\n# On an Azure VM or Container Instance\naz login --identity\n\n\nToken-based (CI/CD):\n\necho \"$AZURE_ACCESS_TOKEN\" | az login --service-principal -u $AZURE_CLIENT_ID --password-stdin --tenant $AZURE_TENANT_ID\n\nKey Resources\nOfficial Documentation: https://learn.microsoft.com/en-us/cli/azure/\nCommand Reference: https://learn.microsoft.com/en-us/cli/azure/reference-index\nGitHub Repository: https://github.com/Azure/azure-cli\nComprehensive Guide: See references/REFERENCE.md\nRelease Notes: https://github.com/Azure/azure-cli/releases\nTips & Tricks\n\nEnable Tab Completion:\n\n# macOS with Homebrew\neval \"$(az completion init zsh)\"\n\n# Linux (bash)\neval \"$(az completion init bash)\"\n\n\nFind Commands Quickly:\n\naz find \"create virtual machine\"  # Search for commands\n\n\nUse --no-wait for Long Operations:\n\naz vm create -g RG -n VM --image UbuntuLTS --no-wait\n# Check status later with az vm show\n\n\nSave Frequently Used Parameters:\n\naz configure --defaults group=myRG location=eastus\n\n\nCombine with Other Tools:\n\n# Use with jq for advanced JSON processing\naz vm list | jq '.[] | select(.powerState == \"VM running\") | .name'\n\n# Use with xargs for batch operations\naz storage account list --query \"[].name\" -o tsv | xargs -I {} az storage account show -g RG -n {}\n\nNext Steps\nReview references/REFERENCE.md for comprehensive command documentation\nExplore helper scripts in the scripts/ directory\nPractice with non-production resources first\nReview Azure best practices and cost optimization strategies\n\nVersion: 1.0.0\nLicense: MIT\nCompatible with: Azure CLI v2.50+, Azure Subscription"
  },
  "trust": {
    "sourceLabel": "tencent",
    "provenanceUrl": "https://clawhub.ai/ddevaal/azure-cli",
    "publisherUrl": "https://clawhub.ai/ddevaal/azure-cli",
    "owner": "ddevaal",
    "version": "1.0.0",
    "license": null,
    "verificationStatus": "Indexed source record"
  },
  "links": {
    "detailUrl": "https://openagent3.xyz/skills/azure-cli",
    "downloadUrl": "https://openagent3.xyz/downloads/azure-cli",
    "agentUrl": "https://openagent3.xyz/skills/azure-cli/agent",
    "manifestUrl": "https://openagent3.xyz/skills/azure-cli/agent.json",
    "briefUrl": "https://openagent3.xyz/skills/azure-cli/agent.md"
  }
}