安装方式
手动下载安装
下载 ZIP 后解压到技能目录即可安装。若在桌面客户端 WebView中直接下载出现异常,本站会改为提示页 + 原始链接,请按页内说明操作。
下载 ZIP (shub-azure-cli-v1.0.0.zip)触发指令
/azure-cli
跨平台安装指引
该技能声明兼容以下 1 个平台,将 ZIP 解压到对应目录即可被识别。
unzip shub-azure-cli-v1.0.0.zip -d ~/.claude/skills/
mkdir -p 创建;启用 Skill 后请重启对应 Agent 让配置生效。
使用指南
Azure CLI
围绕 Azure CLI:使用 az 管理订阅、资源组、网络与计算;登录与配置文件路径以 SKILL.md 为准。 无需在每次任务前把零散英文说明手工拼进上下文,也 减少 与客户端默认行为脱节的试错;具体命令、钩子与 JSON 参数仍以 ZIP 包内 SKILL.md 为权威。下文结构与站内 MCP CLI 类专题稿相同:何时用、前置、流程、速查与故障。
何时使用
- 使用
az管理订阅、资源组、网络与计算 - 登录与配置文件路径以 SKILL.md 为准
- 已获取本技能 ZIP,并准备在 Claude Code / OpenClaw 中按 SKILL.md 挂载。
- 希望用中文专题稿快速判断「该不该启用」,再深入英文 SKILL 查参数与边界。
- 需要与团队对齐同一套触发方式、目录约定或回调格式时。
前置条件
- 通用:可运行 Claude Code 或文档要求的客户端;有可读写的项目工作区(或 SKILL.md 指定的沙箱目录)。
- 权威细节:API Key / OAuth、钩子路径、环境变量以 ZIP 内 SKILL.md 为准。
典型流程
- 从 ClawHub / 站内分发获取技能 ZIP,校验版本与校验和(若提供)。
- 阅读 SKILL.md 的安装段落:目录落点、客户端类型(Claude Code / OpenClaw / 脚本)。
- 用文档中的最小示例完成第一次调用(单文件修改、单次查询或单次委派)。
- 确认工作目录、权限边界与输出路径后,再处理多文件或长耗时任务。
- 需要回调 / Webhook / 通知时,按 SKILL.md 配置端点并在测试环境先验通。
与 ZIP / SKILL.md 的关系
站内专题稿与 MCP CLI 类 oss 稿同样:概括何时用、怎么接、怎么排错;命令模板、钩子名、JSON 字段、版本矩阵一律以 ZIP 内 SKILL.md 与 ClawHub 上游为准。
命令示例(摘自包内 SKILL.md)
以下为从上游 SKILL.md(或入库正文)自动抽取的终端/脚本片段;路径、环境变量与参数以当前 ZIP 与官方说明为准。
ClawHub slug:azure-cli(安装命令以 SKILL.md / claw CLI 为准)。
brew install azure-cli
curl -sL https://aka.ms/InstallAzureCliLinux | bash
choco install azure-cli
# Or download MSI from https://aka.ms/InstallAzureCliWindowsMSI
az --version # Show version
az --help # Show general help
# 1. Login to Azure (opens browser for authentication)
az login
# 2. View your subscriptions
az account list
# 3. Set default subscription (optional)
az account set --subscription "My Subscription"
# 4. Create a resource group
az group create -g myResourceGroup -l eastus
# 5. List your resource groups
az group list
az login # Interactive login
az login --service-principal -u APP_ID -p PASSWORD -t TENANT_ID
az login --identity # Managed identity
az logout # Sign out
az account show # Current account
az account list # All accounts
az account set --subscription SUBSCRIPTION # Set default
--subscription ID # Target subscription
--resource-group -g RG # Target resource group
--output -o json|table|tsv|yaml # Output format
--query JMESPATH_QUERY # Filter/extract output
--verbose -v # Verbose output
--debug # Debug mode
--help -h # Command help
az group list # List all resource groups
az group create -g RG -l LOCATION # Create
az group delete -g RG # Delete
az group show -g RG # Get details
az group update -g RG --tags key=value # Update tags
az vm create -g RG -n VM_NAME --image UbuntuLTS
az vm list -g RG
az vm show -g RG -n VM_NAME
az vm start -g RG -n VM_NAME
az vm stop -g RG -n VM_NAME
az vm restart -g RG -n VM_NAME
az vm delete -g RG -n VM_NAME
az storage account create -g RG -n ACCOUNT --sku Standard_LRS
az storage account list
az storage container create --account-name ACCOUNT -n CONTAINER
az storage blob upload --account-name ACCOUNT -c CONTAINER -n BLOB -f LOCAL_FILE
az storage blob download --account-name ACCOUNT -c CONTAINER -n BLOB -f LOCAL_FILE
站内入库时的触发命令(完整语义见 ZIP):
# 使用本技能时可在对话中引用或执行上述指令;完整参数与示例见下载包内 SKILL.md。
/azure-cli
最佳实践
- 先 SKILL.md 再猜参数;站内专题稿不替代 schema 与必填字段说明。
- 委派任务时写清验收标准(命令、文件路径、测试命令),减少来回追问。
- 长任务用文档推荐的回调 / 日志落盘代替高频轮询,省 Token 也省机器负载。
- 多技能同时启用时,注意钩子加载顺序与重复工具调用(以 SKILL.md 冲突说明为准)。
调试与排错
- 打开 stderr 与客户端日志;PTY/tmux 场景同时看面板最后几十行输出。
- 参数错误时对照 SKILL.md 中的 JSON/CLI 示例(引号、转义、工作目录)。
- 网络类失败:查代理、防火墙、MCP 传输方式(stdio / HTTP / SSE)。
速查
| 动作 | 说明 |
|------|------|
| 获取技能包 | ClawHub / 站内 ZIP,核对版本 |
| 权威步骤 | 优先阅读 ZIP 内 SKILL.md |
| 首次试跑 | 使用 SKILL.md 最小示例 |
| 验收 | 对照路径、测试命令或回调负载 |
常见故障
- 无输出或立即退出 → 工作目录错误、依赖未装、或 Claude Code 未登录;按 SKILL.md 自检清单执行。
- 权限被拒绝 → 检查沙箱路径、
--permission-mode与工具白名单。 - 与简介不符 → 以英文 SKILL 与上游仓库为准,站内稿仅作结构化导读。
# Azure CLI Skill
**Master the Azure command-line interface for cloud infrastructure management, automation, and DevOps workflows.**
Azure 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.
## What You'll Learn
### Core Concepts
- Azure subscription and resource group architecture
- Authentication methods and credential management
- Resource Provider organization and registration
- Global parameters, output formatting, and query syntax
- Automation scripting and error handling
### Major Service Areas (66 command modules)
- **Compute:** Virtual Machines, Scale Sets, Kubernetes (AKS), Containers
- **Networking:** Virtual Networks, Load Balancers, CDN, Traffic Manager
- **Storage & Data:** Storage Accounts, Data Lake, Cosmos DB, Databases
- **Application Services:** App Service, Functions, Container Apps
- **Databases:** SQL Server, MySQL, PostgreSQL, CosmosDB
- **Integration & Messaging:** Event Hubs, Service Bus, Logic Apps
- **Monitoring & Management:** Azure Monitor, Policy, RBAC, Cost Management
- **AI & Machine Learning:** Cognitive Services, Machine Learning
- **DevOps:** Azure DevOps, Pipelines, Extensions
## Quick Start
### Installation
**macOS:**
```bash
brew install azure-cli
```
**Linux (Ubuntu/Debian):**
```bash
curl -sL https://aka.ms/InstallAzureCliLinux | bash
```
**Windows:**
```powershell
choco install azure-cli
# Or download MSI from https://aka.ms/InstallAzureCliWindowsMSI
```
**Verify Installation:**
```bash
az --version # Show version
az --help # Show general help
```
### First Steps
```bash
# 1. Login to Azure (opens browser for authentication)
az login
# 2. View your subscriptions
az account list
# 3. Set default subscription (optional)
az account set --subscription "My Subscription"
# 4. Create a resource group
az group create -g myResourceGroup -l eastus
# 5. List your resource groups
az group list
```
## Essential Commands
### Authentication & Accounts
```bash
az login # Interactive login
az login --service-principal -u APP_ID -p PASSWORD -t TENANT_ID
az login --identity # Managed identity
az logout # Sign out
az account show # Current account
az account list # All accounts
az account set --subscription SUBSCRIPTION # Set default
```
### Global Flags (Use with Any Command)
```bash
--subscription ID # Target subscription
--resource-group -g RG # Target resource group
--output -o json|table|tsv|yaml # Output format
--query JMESPATH_QUERY # Filter/extract output
--verbose -v # Verbose output
--debug # Debug mode
--help -h # Command help
```
### Resource Groups
```bash
az group list # List all resource groups
az group create -g RG -l LOCATION # Create
az group delete -g RG # Delete
az group show -g RG # Get details
az group update -g RG --tags key=value # Update tags
```
### Virtual Machines (Compute)
```bash
az vm create -g RG -n VM_NAME --image UbuntuLTS
az vm list -g RG
az vm show -g RG -n VM_NAME
az vm start -g RG -n VM_NAME
az vm stop -g RG -n VM_NAME
az vm restart -g RG -n VM_NAME
az vm delete -g RG -n VM_NAME
```
### Storage Operations
```bash
az storage account create -g RG -n ACCOUNT --sku Standard_LRS
az storage account list
az storage container create --account-name ACCOUNT -n CONTAINER
az storage blob upload --account-name ACCOUNT -c CONTAINER -n BLOB -f LOCAL_FILE
az storage blob download --account-name ACCOUNT -c CONTAINER -n BLOB -f LOCAL_FILE
```
### Azure Kubernetes Service (AKS)
```bash
az aks create -g RG -n CLUSTER --node-count 2
az aks get-credentials -g RG -n CLUSTER
az aks list
az aks show -g RG -n CLUSTER
az aks delete -g RG -n CLUSTER
```
## Common Patterns
### Pattern 1: Output Formatting
```bash
# Get only specific fields
az vm list --query "[].{name: name, state: powerState}"
# Get just the names
az vm list --query "[].name" -o tsv
# Filter and extract
az vm list --query "[?powerState=='VM running'].name"
```
### Pattern 2: Automation & Scripting
```bash
#!/bin/bash
set -e # Exit on error
# Get VM ID
VM_ID=$(az vm create \
-g myRG \
-n myVM \
--image UbuntuLTS \
--query id \
--output tsv)
echo "Created VM: $VM_ID"
# Check provisioning state
az vm show --ids "$VM_ID" --query provisioningState
```
### Pattern 3: Batch Operations
```bash
# Delete all VMs in a resource group
az vm list -g myRG -d --query "[].id" -o tsv | xargs az vm delete --ids
# List all resources by tag
az resource list --tag env=production
```
### Pattern 4: Using Defaults
```bash
# Set defaults to reduce typing
az configure --defaults group=myRG subscription=mySubscription location=eastus
# Now commands are simpler
az vm create -n myVM --image UbuntuLTS # group, subscription, location inherited
```
## Helper Scripts
This skill includes helper bash scripts for common operations:
- **azure-vm-status.sh** — Check VM status across subscription
- **azure-resource-cleanup.sh** — Identify and remove unused resources
- **azure-storage-analysis.sh** — Analyze storage account usage and costs
- **azure-subscription-info.sh** — Get subscription quotas and limits
- **azure-rg-deploy.sh** — Deploy infrastructure with monitoring
**Usage:**
```bash
./scripts/azure-vm-status.sh -g myResourceGroup
./scripts/azure-storage-analysis.sh --subscription mySubscription
```
## Advanced Topics
### Output Querying with JMESPath
Azure CLI supports powerful output filtering using JMESPath:
```bash
# Sort results
az vm list --query "sort_by([], &name)"
# Complex filtering
az vm list --query "[?location=='eastus' && powerState=='VM running'].name"
# Aggregation
az vm list --query "length([])" # Count VMs
```
### Error Handling
```bash
# Check exit codes
az vm create -g RG -n VM --image UbuntuLTS
if [ $? -eq 0 ]; then
echo "VM created successfully"
else
echo "Failed to create VM"
exit 1
fi
```
### Authentication Methods
**Service Principal (Automation):**
```bash
az login --service-principal \
--username $AZURE_CLIENT_ID \
--password $AZURE_CLIENT_SECRET \
--tenant $AZURE_TENANT_ID
```
**Managed Identity (Azure Resources):**
```bash
# On an Azure VM or Container Instance
az login --identity
```
**Token-based (CI/CD):**
```bash
echo "$AZURE_ACCESS_TOKEN" | az login --service-principal -u $AZURE_CLIENT_ID --password-stdin --tenant $AZURE_TENANT_ID
```
## Key Resources
- **Official Documentation:** https://learn.microsoft.com/en-us/cli/azure/
- **Command Reference:** https://learn.microsoft.com/en-us/cli/azure/reference-index
- **GitHub Repository:** https://github.com/Azure/azure-cli
- **Comprehensive Guide:** See [references/REFERENCE.md](references/REFERENCE.md)
- **Release Notes:** https://github.com/Azure/azure-cli/releases
## Tips & Tricks
1. **Enable Tab Completion:**
```bash
# macOS with Homebrew
eval "$(az completion init zsh)"
# Linux (bash)
eval "$(az completion init bash)"
```
2. **Find Commands Quickly:**
```bash
az find "create virtual machine" # Search for commands
```
3. **Use --no-wait for Long Operations:**
```bash
az vm create -g RG -n VM --image UbuntuLTS --no-wait
# Check status later with az vm show
```
4. **Save Frequently Used Parameters:**
```bash
az configure --defaults group=myRG location=eastus
```
5. **Combine with Other Tools:**
```bash
# Use with jq for advanced JSON processing
az vm list | jq '.[] | select(.powerState == "VM running") | .name'
# Use with xargs for batch operations
az storage account list --query "[].name" -o tsv | xargs -I {} az storage account show -g RG -n {}
```
## Next Steps
- Review [references/REFERENCE.md](references/REFERENCE.md) for comprehensive command documentation
- Explore helper scripts in the `scripts/` directory
- Practice with non-production resources first
- Review Azure best practices and cost optimization strategies
---
**Version:** 1.0.0
**License:** MIT
**Compatible with:** Azure CLI v2.50+, Azure Subscription