id = "azure-cli"
name = "Azure CLI"
homepage = "https://learn.microsoft.com/cli/azure/"
description = "A set of commands used to create and manage Azure resources."
icon = "theSVG:azure"
executables = ["az"]
[dotfiles]
paths = [
"~/.azure/config",
"~/.azure/clouds.config",
]
exclude = []
secret = [
"~/.azure/msal_token_cache.json",
"~/.azure/msal_token_cache.bin",
"~/.azure/service_principal_entries.json",
"~/.azure/service_principal_entries.bin",
]
side_effect = false
[[dotfiles.machine_lines]]
file = "~/.azure/config"
match = { prefix = ["log_dir"] }
scope = "backup"
[[dotfiles.secret_paths]]
file = "~/.azure/config"
match = { prefix = ["key", "sas_token", "connection_string", "access_key", "storage_key"] }
[commands]
format = 1
label = "Azure CLI"
description = "Create, list and delete resource groups. The rest of the az command tree (thousands of commands) is not modeled."
quality = "ai-draft"
parser = { end_of_options = "--", interleave = "permute", long_equals = true, short_attached = false, short_bundles = false }
[[commands.subcommand]]
path = ["group", "create"]
label = "Create a resource group"
[[commands.subcommand.source]]
id = "ref"
kind = "manual"
url = "https://learn.microsoft.com/en-us/cli/azure/group"
revision = "2026-10-27"
evidence = '''
az group create --location
--name --resource-group
[--managed-by]
[--tags]
--location -l
Location. Values from: az account list-locations. You can configure the default location using az configure --defaults location=<location>.
--name --resource-group -g -n
Name of the new resource group.
--managed-by
The ID of the resource that manages this resource group.
--tags
Space-separated tags: key[=value] [key[=value] ...]. Use "" to clear existing tags.
az group create -l westus -n MyResourceGroup
--output -o
Output format.
Accepted values:
json, jsonc, none, table, tsv, yaml, yamlc
--query
JMESPath query string. See http://jmespath.org/ for more information and examples.
--subscription
Name or ID of subscription. You can configure the default subscription using az account set -s NAME_OR_ID.
'''
[[commands.subcommand.field]]
id = "name"
label = "Resource group"
type = "string"
option = ["--name", "--resource-group", "-g", "-n"]
sources = ["ref"]
[[commands.subcommand.field]]
id = "location"
label = "Location"
description = "Values from az account list-locations."
type = "string"
option = ["--location", "-l"]
sources = ["ref"]
[[commands.subcommand.field]]
id = "tags"
label = "Tags"
description = "Space-separated key[=value] pairs."
type = "string"
option = ["--tags"]
sources = ["ref"]
[[commands.subcommand.field]]
id = "managed_by"
label = "Managed by"
description = "ID of the resource that manages this group."
type = "string"
option = ["--managed-by"]
sources = ["ref"]
[[commands.subcommand.field]]
id = "output"
label = "Output format"
type = "enum"
option = ["--output", "-o"]
choices = [{ value = "json", label = "JSON" }, { value = "jsonc", label = "Colored JSON" }, { value = "none", label = "None" }, { value = "table", label = "Table" }, { value = "tsv", label = "TSV" }, { value = "yaml", label = "YAML" }, { value = "yamlc", label = "Colored YAML" }]
sources = ["ref"]
[[commands.subcommand.field]]
id = "subscription"
label = "Subscription"
description = "Name or ID."
type = "string"
option = ["--subscription"]
sources = ["ref"]
[[commands.subcommand.task]]
id = "create"
label = "Create"
fields = ["name", "location", "tags", "output"]
required = ["name", "location"]
[[commands.subcommand.group]]
id = "basic"
label = "Basic"
fields = ["name", "location", "tags"]
[[commands.subcommand.group]]
id = "advanced"
label = "Advanced"
fields = ["managed_by", "output", "subscription"]
[[commands.subcommand]]
path = ["group", "delete"]
label = "Delete a resource group"
[[commands.subcommand.source]]
id = "ref"
kind = "manual"
url = "https://learn.microsoft.com/en-us/cli/azure/group"
revision = "2026-10-27"
evidence = '''
az group delete --name --resource-group
[--force-deletion-types {Microsoft.Compute/virtualMachineScaleSets, Microsoft.Compute/virtualMachines, Microsoft.Databricks/workspaces}]
[--no-wait]
[--yes]
--name --resource-group -g -n
Name of resource group. You can configure the default group using az configure --defaults group=<name>.
--force-deletion-types -f
The resource types you want to force delete.
Microsoft.Compute/virtualMachineScaleSets, Microsoft.Compute/virtualMachines, Microsoft.Databricks/workspaces
--no-wait
Do not wait for the long-running operation to finish.
--yes -y
Do not prompt for confirmation.
az group delete -n MyResourceGroup
--output -o
Output format.
Accepted values:
json, jsonc, none, table, tsv, yaml, yamlc
--query
JMESPath query string. See http://jmespath.org/ for more information and examples.
--subscription
Name or ID of subscription. You can configure the default subscription using az account set -s NAME_OR_ID.
'''
[[commands.subcommand.field]]
id = "name"
label = "Resource group"
type = "string"
option = ["--name", "--resource-group", "-g", "-n"]
effect = "delete"
sources = ["ref"]
[[commands.subcommand.field]]
id = "force_types"
label = "Force-delete resource types"
type = "enum"
option = ["--force-deletion-types", "-f"]
effect = "delete"
choices = [{ value = "Microsoft.Compute/virtualMachineScaleSets", label = "Scale sets" }, { value = "Microsoft.Compute/virtualMachines", label = "Virtual machines" }, { value = "Microsoft.Databricks/workspaces", label = "Databricks workspaces" }]
sources = ["ref"]
[[commands.subcommand.field]]
id = "no_wait"
label = "Do not wait"
type = "boolean"
option = ["--no-wait"]
sources = ["ref"]
[[commands.subcommand.field]]
id = "yes"
label = "Do not ask for confirmation"
type = "boolean"
option = ["--yes", "-y"]
effect = "delete"
sources = ["ref"]
[[commands.subcommand.field]]
id = "subscription"
label = "Subscription"
description = "Name or ID."
type = "string"
option = ["--subscription"]
sources = ["ref"]
[[commands.subcommand.task]]
id = "delete"
label = "Delete"
fields = ["name", "no_wait", "yes"]
required = ["name"]
[[commands.subcommand.group]]
id = "basic"
label = "Basic"
fields = ["name", "no_wait", "yes"]
[[commands.subcommand.group]]
id = "advanced"
label = "Advanced"
fields = ["force_types", "subscription"]
[[commands.subcommand]]
path = ["group", "list"]
label = "List resource groups"
[[commands.subcommand.source]]
id = "ref"
kind = "manual"
url = "https://learn.microsoft.com/en-us/cli/azure/group"
revision = "2026-10-27"
evidence = '''
az group list [--tag]
--tag
A single tag in 'key[=value]' format. Use "" to clear existing tags.
az group list --query "[?location=='westus']"
--output -o
Output format.
Accepted values:
json, jsonc, none, table, tsv, yaml, yamlc
--query
JMESPath query string. See http://jmespath.org/ for more information and examples.
--subscription
Name or ID of subscription. You can configure the default subscription using az account set -s NAME_OR_ID.
'''
[[commands.subcommand.field]]
id = "tag"
label = "Tag filter"
description = "key[=value]"
type = "string"
option = ["--tag"]
sources = ["ref"]
[[commands.subcommand.field]]
id = "query"
label = "JMESPath query"
type = "string"
option = ["--query"]
sources = ["ref"]
[[commands.subcommand.field]]
id = "output"
label = "Output format"
type = "enum"
option = ["--output", "-o"]
choices = [{ value = "json", label = "JSON" }, { value = "jsonc", label = "Colored JSON" }, { value = "none", label = "None" }, { value = "table", label = "Table" }, { value = "tsv", label = "TSV" }, { value = "yaml", label = "YAML" }, { value = "yamlc", label = "Colored YAML" }]
sources = ["ref"]
[[commands.subcommand.field]]
id = "subscription"
label = "Subscription"
description = "Name or ID."
type = "string"
option = ["--subscription"]
sources = ["ref"]
[[commands.subcommand.task]]
id = "list"
label = "List"
fields = ["tag", "query", "output"]
required = []
[[commands.subcommand.task]]
id = "table"
label = "List as a table"
set = { output = ["table"] }
fields = ["tag", "output"]
required = []
[[commands.subcommand.group]]
id = "basic"
label = "Basic"
fields = ["tag", "query", "output"]
[[commands.subcommand.group]]
id = "advanced"
label = "Advanced"
fields = ["subscription"]