You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
fix(telemetry): Improve deployment error classification and extension attribution - #10157
Make deployment failures easier to understand in azd progress, final errors, and existing telemetry.
Changes
Show the service timeout as the final CLI error even when its cause has a different suggestion, and mark the timed-out step as Failed rather than Skipped.
Preserve publish/deploy causes in the error chain. Classify invalid --timeout/AZD_DEPLOY_TIMEOUT values as internal.invalid_args, service timeouts as internal.timeout, and malformed extension deploy responses as internal.extension_invalid_response.
Record the responsible extension and fixed service-target operation in existing extension.id, extension.version, and extension.event fields on failed command spans; error.chain.types reflects the cause chain. No new telemetry events, fields, or sending path were added.
Add regression tests and update the telemetry reference and privacy notes.
Validation
go test ./cmd/middleware ./internal/cmd passed, including timeout UX regressions.
go test ./pkg/project passed after rebasing onto current main.
golangci-lint run ./cmd/middleware ./internal/cmd passed.
Full go tool mage preflight did not pass on Windows: an unchanged schema-formatting failure (also on origin/main), a container playback test requiring Docker/Podman, and tests in unchanged cmd and pkg/tools/language. Formatting, modernization, copyright, spelling, build, and lint passed.
Telemetry Change Checklist
New Fields
Core field defined in fields/fields.go; extension-supplied ext.* values are covered by the extension's own review instead: N/A, existing fields reused
Field has the correct classification and purpose: existing SystemMetadata / FeatureInsight
Field documented in docs/specs/metrics-audit/telemetry-schema.md
Hashing applied where required (user-provided values, names, paths): N/A, operation labels are fixed host values
Measurement fields use correct OTel type (Int64, Float64): N/A, no new measurements
Enum values documented with allowed value set: service-target operation labels documented
Extension enum values contain no user-derived or customer content
New Events
Event constant defined in events/events.go: N/A, no new event
Event constant is an exported string const whose Go identifier contains Event: N/A
Event documented in docs/specs/metrics-audit/telemetry-schema.md: N/A
Azure Pipelines:
Successfully started running 1 pipeline(s).
24 pipeline(s) were filtered out due to trigger conditions.
There may be pipelines that require an authorized user to comment /azp run to run.
Azure Pipelines:
Successfully started running 1 pipeline(s).
24 pipeline(s) were filtered out due to trigger conditions.
There may be pipelines that require an authorized user to comment /azp run to run.
This heading and decision table read as a completed follow-up privacy review, but the PR checklist says approval is still pending. Mark this as proposed/pending, as the adjacent Agency record does, or defer the review record until approval is confirmed.
Thanks for the contribution! The linked issue isn't in the current milestone yet.
Thank you for logging this issue; our team is reviewing it. If you need urgent prioritization, tag Rick Winter (@RickWinter) and Kristen Womack (@kristenwomack) to let us know.
Document internal.invalid_args here as well. This PR newly maps invalid --timeout and AZD_DEPLOY_TIMEOUT values to that code, but the telemetry reference currently has no entry for it while listing the other classifications introduced by this change.
Clarify host-derived identity for failed cmd.* spans
The ext.usage admission check does not cover these failed cmd.* spans: MapError records invocation metadata without filtering the extension source, so local/dev service-target extensions are included too. Describe the identity as host-derived metadata covered by the prior review rather than relying on the official-registry admission path.
Correct extension.event failure-label ownership in schema
The field table above still calls extension.event an “Extension-defined ... failed-invocation event,” which contradicts this host-defined operation contract and the updated Go comment. Update that row so the authoritative schema is consistent about who controls failure labels.
title: Azure Developer CLI reference
description: This article explains the syntax and parameters for the various Azure Developer CLI commands.
author: alexwolfmsft
ms.author: alexwolf
ms.date: 09/24/2026
ms.service: azure-dev-cli
ms.topic: reference
ms.custom: devx-track-azdevcli
Azure Developer CLI reference
This article explains the syntax and parameters for the various Azure Developer CLI commands.
azd
The Azure Developer CLI (azd) is an open-source tool that helps onboard and manage your project on Azure
Options
-C, --cwd string Sets the current working directory.
--debug Enables debugging and diagnostics logging.
--docs Opens the documentation for azd in your web browser.
-e, --environment string The name of the environment to use.
-h, --help Gets help for azd.
--no-prompt Runs without prompts. Uses existing values; fails if any required value or decision cannot be resolved automatically. Automatically enabled when azd detects a CI/CD or AI-agent environment; set AZD_NON_INTERACTIVE=false to opt out of that automatic enablement.
azd version: Print the version number of Azure Developer CLI.
azd add
Add a component to your project.
azd add [flags]
Options
--docs Opens the documentation for azd add in your web browser.
-h, --help Gets help for add.
Options inherited from parent commands
-C, --cwd string Sets the current working directory.
--debug Enables debugging and diagnostics logging.
-e, --environment string The name of the environment to use.
--no-prompt Runs without prompts. Uses existing values; fails if any required value or decision cannot be resolved automatically. Automatically enabled when azd detects a CI/CD or AI-agent environment; set AZD_NON_INTERACTIVE=false to opt out of that automatic enablement.
--docs Opens the documentation for azd auth in your web browser.
-h, --help Gets help for auth.
Options inherited from parent commands
-C, --cwd string Sets the current working directory.
--debug Enables debugging and diagnostics logging.
-e, --environment string The name of the environment to use.
--no-prompt Runs without prompts. Uses existing values; fails if any required value or decision cannot be resolved automatically. Automatically enabled when azd detects a CI/CD or AI-agent environment; set AZD_NON_INTERACTIVE=false to opt out of that automatic enablement.
When run without any arguments, log in interactively using a browser. To log in using a device code, pass
--use-device-code.
To log in as a service principal, pass --client-id and --tenant-id as well as one of: --client-secret,
--client-certificate, or --federated-credential-provider.
To log in using a managed identity, pass --managed-identity, which will use the system assigned managed identity.
To use a user assigned managed identity, pass --client-id in addition to --managed-identity with the client id of
the user assigned managed identity you wish to use.
When already logged in, azd automatically clears cached authentication data (such as stale tokens)
before re-authenticating. This ensures a clean login state and prevents issues with expired or
corrupted cached credentials.
azd auth login [flags]
Options
--check-status Checks the log-in status instead of logging in.
--client-certificate string The path to the client certificate for the service principal to authenticate with.
--client-id string The client id for the service principal to authenticate with.
--client-secret string The client secret for the service principal to authenticate with. Set to the empty string to read the value from the console.
--docs Opens the documentation for azd auth login in your web browser.
--federated-credential-provider string The provider to use to acquire a federated token to authenticate with. Supported values: github, azure-pipelines, oidc
-h, --help Gets help for login.
--managed-identity Use a managed identity to authenticate.
--redirect-port int Choose the port to be used as part of the redirect URI during interactive login.
--tenant-id string The tenant id or domain name to authenticate with.
--use-device-code[=true] When true, log in by using a device code instead of a browser.
Options inherited from parent commands
-C, --cwd string Sets the current working directory.
--debug Enables debugging and diagnostics logging.
-e, --environment string The name of the environment to use.
--no-prompt Runs without prompts. Uses existing values; fails if any required value or decision cannot be resolved automatically. Automatically enabled when azd detects a CI/CD or AI-agent environment; set AZD_NON_INTERACTIVE=false to opt out of that automatic enablement.
--docs Opens the documentation for azd auth logout in your web browser.
-h, --help Gets help for logout.
Options inherited from parent commands
-C, --cwd string Sets the current working directory.
--debug Enables debugging and diagnostics logging.
-e, --environment string The name of the environment to use.
--no-prompt Runs without prompts. Uses existing values; fails if any required value or decision cannot be resolved automatically. Automatically enabled when azd detects a CI/CD or AI-agent environment; set AZD_NON_INTERACTIVE=false to opt out of that automatic enablement.
Display whether you are logged in to Azure and the associated account information.
azd auth status [flags]
Options
--docs Opens the documentation for azd auth status in your web browser.
-h, --help Gets help for status.
Options inherited from parent commands
-C, --cwd string Sets the current working directory.
--debug Enables debugging and diagnostics logging.
-e, --environment string The name of the environment to use.
--no-prompt Runs without prompts. Uses existing values; fails if any required value or decision cannot be resolved automatically. Automatically enabled when azd detects a CI/CD or AI-agent environment; set AZD_NON_INTERACTIVE=false to opt out of that automatic enablement.
The completion command allows you to generate autocompletion scripts for your shell,
currently supports bash, zsh, fish and PowerShell.
See each sub-command's help for details on how to use the generated script.
Options
--docs Opens the documentation for azd completion in your web browser.
-h, --help Gets help for completion.
Options inherited from parent commands
-C, --cwd string Sets the current working directory.
--debug Enables debugging and diagnostics logging.
-e, --environment string The name of the environment to use.
--no-prompt Runs without prompts. Uses existing values; fails if any required value or decision cannot be resolved automatically. Automatically enabled when azd detects a CI/CD or AI-agent environment; set AZD_NON_INTERACTIVE=false to opt out of that automatic enablement.
--docs Opens the documentation for azd completion bash in your web browser.
-h, --help Gets help for bash.
Options inherited from parent commands
-C, --cwd string Sets the current working directory.
--debug Enables debugging and diagnostics logging.
-e, --environment string The name of the environment to use.
--no-prompt Runs without prompts. Uses existing values; fails if any required value or decision cannot be resolved automatically. Automatically enabled when azd detects a CI/CD or AI-agent environment; set AZD_NON_INTERACTIVE=false to opt out of that automatic enablement.
--docs Opens the documentation for azd completion fig in your web browser.
-h, --help Gets help for fig.
--include-help-subcommands Include subcommands under the help command in the Fig spec
Options inherited from parent commands
-C, --cwd string Sets the current working directory.
--debug Enables debugging and diagnostics logging.
-e, --environment string The name of the environment to use.
--no-prompt Runs without prompts. Uses existing values; fails if any required value or decision cannot be resolved automatically. Automatically enabled when azd detects a CI/CD or AI-agent environment; set AZD_NON_INTERACTIVE=false to opt out of that automatic enablement.
--docs Opens the documentation for azd completion fish in your web browser.
-h, --help Gets help for fish.
Options inherited from parent commands
-C, --cwd string Sets the current working directory.
--debug Enables debugging and diagnostics logging.
-e, --environment string The name of the environment to use.
--no-prompt Runs without prompts. Uses existing values; fails if any required value or decision cannot be resolved automatically. Automatically enabled when azd detects a CI/CD or AI-agent environment; set AZD_NON_INTERACTIVE=false to opt out of that automatic enablement.
--docs Opens the documentation for azd completion powershell in your web browser.
-h, --help Gets help for powershell.
Options inherited from parent commands
-C, --cwd string Sets the current working directory.
--debug Enables debugging and diagnostics logging.
-e, --environment string The name of the environment to use.
--no-prompt Runs without prompts. Uses existing values; fails if any required value or decision cannot be resolved automatically. Automatically enabled when azd detects a CI/CD or AI-agent environment; set AZD_NON_INTERACTIVE=false to opt out of that automatic enablement.
--docs Opens the documentation for azd completion zsh in your web browser.
-h, --help Gets help for zsh.
Options inherited from parent commands
-C, --cwd string Sets the current working directory.
--debug Enables debugging and diagnostics logging.
-e, --environment string The name of the environment to use.
--no-prompt Runs without prompts. Uses existing values; fails if any required value or decision cannot be resolved automatically. Automatically enabled when azd detects a CI/CD or AI-agent environment; set AZD_NON_INTERACTIVE=false to opt out of that automatic enablement.
Manage the Azure Developer CLI user configuration, which includes your default Azure subscription and location.
Available since azure-dev-cli_0.4.0-beta.1.
The easiest way to configure azd for the first time is to run azd init. The subscription and location you select will be stored in the config.json file located in the config directory. To configure azd anytime afterwards, you'll use azd config set.
The default value of the config directory is:
$HOME/.azd on Linux and macOS
%USERPROFILE%.azd on Windows
The configuration directory can be overridden by specifying a path in the AZD_CONFIG_DIR environment variable.
Options
--docs Opens the documentation for azd config in your web browser.
-h, --help Gets help for config.
Options inherited from parent commands
-C, --cwd string Sets the current working directory.
--debug Enables debugging and diagnostics logging.
-e, --environment string The name of the environment to use.
--no-prompt Runs without prompts. Uses existing values; fails if any required value or decision cannot be resolved automatically. Automatically enabled when azd detects a CI/CD or AI-agent environment; set AZD_NON_INTERACTIVE=false to opt out of that automatic enablement.
The configuration directory can be overridden by specifying a path in the AZD_CONFIG_DIR environment variable.
azd config get <path> [flags]
Options
--docs Opens the documentation for azd config get in your web browser.
-h, --help Gets help for get.
Options inherited from parent commands
-C, --cwd string Sets the current working directory.
--debug Enables debugging and diagnostics logging.
-e, --environment string The name of the environment to use.
--no-prompt Runs without prompts. Uses existing values; fails if any required value or decision cannot be resolved automatically. Automatically enabled when azd detects a CI/CD or AI-agent environment; set AZD_NON_INTERACTIVE=false to opt out of that automatic enablement.
Display the list of available features in alpha stage.
azd config list-alpha [flags]
Options
--docs Opens the documentation for azd config list-alpha in your web browser.
-h, --help Gets help for list-alpha.
Options inherited from parent commands
-C, --cwd string Sets the current working directory.
--debug Enables debugging and diagnostics logging.
-e, --environment string The name of the environment to use.
--no-prompt Runs without prompts. Uses existing values; fails if any required value or decision cannot be resolved automatically. Automatically enabled when azd detects a CI/CD or AI-agent environment; set AZD_NON_INTERACTIVE=false to opt out of that automatic enablement.
List all possible configuration settings that can be set with azd, including descriptions and allowed values.
azd config options [flags]
Options
--docs Opens the documentation for azd config options in your web browser.
-h, --help Gets help for options.
Options inherited from parent commands
-C, --cwd string Sets the current working directory.
--debug Enables debugging and diagnostics logging.
-e, --environment string The name of the environment to use.
--no-prompt Runs without prompts. Uses existing values; fails if any required value or decision cannot be resolved automatically. Automatically enabled when azd detects a CI/CD or AI-agent environment; set AZD_NON_INTERACTIVE=false to opt out of that automatic enablement.
Resets all configuration in the configuration path.
The default value of the config directory is:
$HOME/.azd on Linux and macOS
%USERPROFILE%\.azd on Windows
The configuration directory can be overridden by specifying a path in the AZD_CONFIG_DIR environment variable to the default.
azd config reset [flags]
Options
--docs Opens the documentation for azd config reset in your web browser.
-f, --force Force reset without confirmation.
-h, --help Gets help for reset.
Options inherited from parent commands
-C, --cwd string Sets the current working directory.
--debug Enables debugging and diagnostics logging.
-e, --environment string The name of the environment to use.
--no-prompt Runs without prompts. Uses existing values; fails if any required value or decision cannot be resolved automatically. Automatically enabled when azd detects a CI/CD or AI-agent environment; set AZD_NON_INTERACTIVE=false to opt out of that automatic enablement.
The configuration directory can be overridden by specifying a path in the AZD_CONFIG_DIR environment variable.
azd config set <path> <value> [flags]
Examples
azd config set defaults.subscription <yourSubscriptionID>
azd config set defaults.location eastus
Options
--docs Opens the documentation for azd config set in your web browser.
-h, --help Gets help for set.
Options inherited from parent commands
-C, --cwd string Sets the current working directory.
--debug Enables debugging and diagnostics logging.
-e, --environment string The name of the environment to use.
--no-prompt Runs without prompts. Uses existing values; fails if any required value or decision cannot be resolved automatically. Automatically enabled when azd detects a CI/CD or AI-agent environment; set AZD_NON_INTERACTIVE=false to opt out of that automatic enablement.
Show all configuration values in the configuration path.
The default value of the config directory is:
$HOME/.azd on Linux and macOS
%USERPROFILE%\.azd on Windows
The configuration directory can be overridden by specifying a path in the AZD_CONFIG_DIR environment variable.
azd config show [flags]
Options
--docs Opens the documentation for azd config show in your web browser.
-h, --help Gets help for show.
Options inherited from parent commands
-C, --cwd string Sets the current working directory.
--debug Enables debugging and diagnostics logging.
-e, --environment string The name of the environment to use.
--no-prompt Runs without prompts. Uses existing values; fails if any required value or decision cannot be resolved automatically. Automatically enabled when azd detects a CI/CD or AI-agent environment; set AZD_NON_INTERACTIVE=false to opt out of that automatic enablement.
Manage subscription filters for tenant-scoped subscription prompts.
Synopsis
Manage per-tenant subscription filters that control which subscriptions are shown during interactive prompts.
Filters are stored locally in your user configuration and apply per-device.
Options
--docs Opens the documentation for azd config sub-filter in your web browser.
-h, --help Gets help for sub-filter.
Options inherited from parent commands
-C, --cwd string Sets the current working directory.
--debug Enables debugging and diagnostics logging.
-e, --environment string The name of the environment to use.
--no-prompt Runs without prompts. Uses existing values; fails if any required value or decision cannot be resolved automatically. Automatically enabled when azd detects a CI/CD or AI-agent environment; set AZD_NON_INTERACTIVE=false to opt out of that automatic enablement.
Remove the subscription filter for a tenant so that all subscriptions are shown during prompts.
azd config sub-filter remove [flags]
Options
--docs Opens the documentation for azd config sub-filter remove in your web browser.
-h, --help Gets help for remove.
Options inherited from parent commands
-C, --cwd string Sets the current working directory.
--debug Enables debugging and diagnostics logging.
-e, --environment string The name of the environment to use.
--no-prompt Runs without prompts. Uses existing values; fails if any required value or decision cannot be resolved automatically. Automatically enabled when azd detects a CI/CD or AI-agent environment; set AZD_NON_INTERACTIVE=false to opt out of that automatic enablement.
See also
azd config sub-filter: Manage subscription filters for tenant-scoped subscription prompts.
Select which subscriptions to include when prompted for a subscription under a specific tenant.
If a filter already exists, the previously selected subscriptions are pre-checked.
azd config sub-filter set [flags]
Options
--docs Opens the documentation for azd config sub-filter set in your web browser.
-h, --help Gets help for set.
Options inherited from parent commands
-C, --cwd string Sets the current working directory.
--debug Enables debugging and diagnostics logging.
-e, --environment string The name of the environment to use.
--no-prompt Runs without prompts. Uses existing values; fails if any required value or decision cannot be resolved automatically. Automatically enabled when azd detects a CI/CD or AI-agent environment; set AZD_NON_INTERACTIVE=false to opt out of that automatic enablement.
See also
azd config sub-filter: Manage subscription filters for tenant-scoped subscription prompts.
Removes a configuration in the configuration path.
The default value of the config directory is:
$HOME/.azd on Linux and macOS
%USERPROFILE%\.azd on Windows
The configuration directory can be overridden by specifying a path in the AZD_CONFIG_DIR environment variable.
azd config unset <path> [flags]
Examples
azd config unset defaults.location
Options
--docs Opens the documentation for azd config unset in your web browser.
-h, --help Gets help for unset.
Options inherited from parent commands
-C, --cwd string Sets the current working directory.
--debug Enables debugging and diagnostics logging.
-e, --environment string The name of the environment to use.
--no-prompt Runs without prompts. Uses existing values; fails if any required value or decision cannot be resolved automatically. Automatically enabled when azd detects a CI/CD or AI-agent environment; set AZD_NON_INTERACTIVE=false to opt out of that automatic enablement.
--docs Opens the documentation for azd copilot in your web browser.
-h, --help Gets help for copilot.
Options inherited from parent commands
-C, --cwd string Sets the current working directory.
--debug Enables debugging and diagnostics logging.
-e, --environment string The name of the environment to use.
--no-prompt Runs without prompts. Uses existing values; fails if any required value or decision cannot be resolved automatically. Automatically enabled when azd detects a CI/CD or AI-agent environment; set AZD_NON_INTERACTIVE=false to opt out of that automatic enablement.
--docs Opens the documentation for azd copilot consent in your web browser.
-h, --help Gets help for consent.
Options inherited from parent commands
-C, --cwd string Sets the current working directory.
--debug Enables debugging and diagnostics logging.
-e, --environment string The name of the environment to use.
--no-prompt Runs without prompts. Uses existing values; fails if any required value or decision cannot be resolved automatically. Automatically enabled when azd detects a CI/CD or AI-agent environment; set AZD_NON_INTERACTIVE=false to opt out of that automatic enablement.
This command creates consent rules that allow tools to execute
without prompting for permission. You can specify different permission
levels and scopes for the rules.
Examples: Grant always permission to all tools globally
azd copilot consent grant --global --permission always
Grant project permission to a specific tool with read-only scope
azd copilot consent grant --server my-server --tool my-tool --permission project --scope read-only
azd copilot consent grant [flags]
Options
--action string Action type: 'all' or 'readonly' (default "all")
--docs Opens the documentation for azd copilot consent grant in your web browser.
--global Apply globally to all servers
-h, --help Gets help for grant.
--operation string Operation type: 'tool' or 'sampling' (default "tool")
--permission string Permission: 'allow', 'deny', or 'prompt' (default "allow")
--scope string Rule scope: 'global', or 'project' (default "global")
--server string Server name
--tool string Specific tool name (requires --server)
Options inherited from parent commands
-C, --cwd string Sets the current working directory.
--debug Enables debugging and diagnostics logging.
-e, --environment string The name of the environment to use.
--no-prompt Runs without prompts. Uses existing values; fails if any required value or decision cannot be resolved automatically. Automatically enabled when azd detects a CI/CD or AI-agent environment; set AZD_NON_INTERACTIVE=false to opt out of that automatic enablement.
--action string Action type to filter by (all, readonly)
--docs Opens the documentation for azd copilot consent list in your web browser.
-h, --help Gets help for list.
--operation string Operation to filter by (tool, sampling)
--permission string Permission to filter by (allow, deny, prompt)
--scope string Consent scope to filter by (global, project). If not specified, lists rules from all scopes.
--target string Specific target to operate on (server/tool format)
Options inherited from parent commands
-C, --cwd string Sets the current working directory.
--debug Enables debugging and diagnostics logging.
-e, --environment string The name of the environment to use.
--no-prompt Runs without prompts. Uses existing values; fails if any required value or decision cannot be resolved automatically. Automatically enabled when azd detects a CI/CD or AI-agent environment; set AZD_NON_INTERACTIVE=false to opt out of that automatic enablement.
--action string Action type to filter by (all, readonly)
--docs Opens the documentation for azd copilot consent revoke in your web browser.
-h, --help Gets help for revoke.
--operation string Operation to filter by (tool, sampling)
--permission string Permission to filter by (allow, deny, prompt)
--scope string Consent scope to filter by (global, project). If not specified, revokes rules from all scopes.
--target string Specific target to operate on (server/tool format)
Options inherited from parent commands
-C, --cwd string Sets the current working directory.
--debug Enables debugging and diagnostics logging.
-e, --environment string The name of the environment to use.
--no-prompt Runs without prompts. Uses existing values; fails if any required value or decision cannot be resolved automatically. Automatically enabled when azd detects a CI/CD or AI-agent environment; set AZD_NON_INTERACTIVE=false to opt out of that automatic enablement.
--all Deploys all services that are listed in azure.yaml
--docs Opens the documentation for azd deploy in your web browser.
-e, --environment string The name of the environment to use.
--from-package string Deploys the packaged service located at the provided path. Supports zipped file packages (file path) or container images (image tag).
-h, --help Gets help for deploy.
--timeout int Maximum time in seconds for azd to wait for each service deployment. This stops azd from waiting but does not cancel the Azure-side deployment. (default: 1200) (default 1200)
Options inherited from parent commands
-C, --cwd string Sets the current working directory.
--debug Enables debugging and diagnostics logging.
--no-prompt Runs without prompts. Uses existing values; fails if any required value or decision cannot be resolved automatically. Automatically enabled when azd detects a CI/CD or AI-agent environment; set AZD_NON_INTERACTIVE=false to opt out of that automatic enablement.
--docs Opens the documentation for azd down in your web browser.
-e, --environment string The name of the environment to use.
--force Does not require confirmation before it deletes resources.
-h, --help Gets help for down.
--purge Does not require confirmation before it permanently deletes resources that are soft-deleted by default (for example, key vaults).
Options inherited from parent commands
-C, --cwd string Sets the current working directory.
--debug Enables debugging and diagnostics logging.
--no-prompt Runs without prompts. Uses existing values; fails if any required value or decision cannot be resolved automatically. Automatically enabled when azd detects a CI/CD or AI-agent environment; set AZD_NON_INTERACTIVE=false to opt out of that automatic enablement.
--docs Opens the documentation for azd env in your web browser.
-h, --help Gets help for env.
Options inherited from parent commands
-C, --cwd string Sets the current working directory.
--debug Enables debugging and diagnostics logging.
-e, --environment string The name of the environment to use.
--no-prompt Runs without prompts. Uses existing values; fails if any required value or decision cannot be resolved automatically. Automatically enabled when azd detects a CI/CD or AI-agent environment; set AZD_NON_INTERACTIVE=false to opt out of that automatic enablement.
See also
azd env config: Manage environment configuration (ex: stored in .azure/{environment}/config.json).
Manage environment configuration (ex: stored in .azure/{environment}/config.json).
Options
--docs Opens the documentation for azd env config in your web browser.
-h, --help Gets help for config.
Options inherited from parent commands
-C, --cwd string Sets the current working directory.
--debug Enables debugging and diagnostics logging.
-e, --environment string The name of the environment to use.
--no-prompt Runs without prompts. Uses existing values; fails if any required value or decision cannot be resolved automatically. Automatically enabled when azd detects a CI/CD or AI-agent environment; set AZD_NON_INTERACTIVE=false to opt out of that automatic enablement.
Gets a configuration value from the environment's config.json file.
azd env config get <path> [flags]
Options
--docs Opens the documentation for azd env config get in your web browser.
-e, --environment string The name of the environment to use.
-h, --help Gets help for get.
Options inherited from parent commands
-C, --cwd string Sets the current working directory.
--debug Enables debugging and diagnostics logging.
--no-prompt Runs without prompts. Uses existing values; fails if any required value or decision cannot be resolved automatically. Automatically enabled when azd detects a CI/CD or AI-agent environment; set AZD_NON_INTERACTIVE=false to opt out of that automatic enablement.
See also
azd env config: Manage environment configuration (ex: stored in .azure/{environment}/config.json).
Sets a configuration value in the environment's config.json file.
Values are automatically parsed as JSON types when possible. Booleans (true/false),
numbers (42, 3.14), arrays ([...]), and objects ({...}) are stored with their native
JSON types. Plain text values are stored as strings. To force a JSON-typed value to be
stored as a string, wrap it in JSON quotes (e.g. '"true"' or '"8080"').
azd env config set <path> <value> [flags]
Examples
azd env config set myapp.endpoint https://example.com
azd env config set myapp.debug true
azd env config set myapp.count 42
azd env config set infra.parameters.tags '{"env":"dev"}'
azd env config set myapp.port '"8080"'
Options
--docs Opens the documentation for azd env config set in your web browser.
-e, --environment string The name of the environment to use.
-h, --help Gets help for set.
Options inherited from parent commands
-C, --cwd string Sets the current working directory.
--debug Enables debugging and diagnostics logging.
--no-prompt Runs without prompts. Uses existing values; fails if any required value or decision cannot be resolved automatically. Automatically enabled when azd detects a CI/CD or AI-agent environment; set AZD_NON_INTERACTIVE=false to opt out of that automatic enablement.
See also
azd env config: Manage environment configuration (ex: stored in .azure/{environment}/config.json).
Removes a configuration value from the environment's config.json file.
azd env config unset <path> [flags]
Examples
azd env config unset myapp.endpoint
Options
--docs Opens the documentation for azd env config unset in your web browser.
-e, --environment string The name of the environment to use.
-h, --help Gets help for unset.
Options inherited from parent commands
-C, --cwd string Sets the current working directory.
--debug Enables debugging and diagnostics logging.
--no-prompt Runs without prompts. Uses existing values; fails if any required value or decision cannot be resolved automatically. Automatically enabled when azd detects a CI/CD or AI-agent environment; set AZD_NON_INTERACTIVE=false to opt out of that automatic enablement.
See also
azd env config: Manage environment configuration (ex: stored in .azure/{environment}/config.json).
--docs Opens the documentation for azd env get-value in your web browser.
-e, --environment string The name of the environment to use.
-h, --help Gets help for get-value.
Options inherited from parent commands
-C, --cwd string Sets the current working directory.
--debug Enables debugging and diagnostics logging.
--no-prompt Runs without prompts. Uses existing values; fails if any required value or decision cannot be resolved automatically. Automatically enabled when azd detects a CI/CD or AI-agent environment; set AZD_NON_INTERACTIVE=false to opt out of that automatic enablement.
--docs Opens the documentation for azd env get-values in your web browser.
-e, --environment string The name of the environment to use.
-h, --help Gets help for get-values.
Options inherited from parent commands
-C, --cwd string Sets the current working directory.
--debug Enables debugging and diagnostics logging.
--no-prompt Runs without prompts. Uses existing values; fails if any required value or decision cannot be resolved automatically. Automatically enabled when azd detects a CI/CD or AI-agent environment; set AZD_NON_INTERACTIVE=false to opt out of that automatic enablement.
--docs Opens the documentation for azd env list in your web browser.
-h, --help Gets help for list.
Options inherited from parent commands
-C, --cwd string Sets the current working directory.
--debug Enables debugging and diagnostics logging.
-e, --environment string The name of the environment to use.
--no-prompt Runs without prompts. Uses existing values; fails if any required value or decision cannot be resolved automatically. Automatically enabled when azd detects a CI/CD or AI-agent environment; set AZD_NON_INTERACTIVE=false to opt out of that automatic enablement.
Create a new environment and set it as the default.
azd env new <environment> [flags]
Options
--docs Opens the documentation for azd env new in your web browser.
-h, --help Gets help for new.
-l, --location string Azure location for the new environment
--subscription string ID of an Azure subscription to use for the new environment
Options inherited from parent commands
-C, --cwd string Sets the current working directory.
--debug Enables debugging and diagnostics logging.
-e, --environment string The name of the environment to use.
--no-prompt Runs without prompts. Uses existing values; fails if any required value or decision cannot be resolved automatically. Automatically enabled when azd detects a CI/CD or AI-agent environment; set AZD_NON_INTERACTIVE=false to opt out of that automatic enablement.
Refresh environment values by using information from a previous infrastructure provision.
azd env refresh <environment> [flags]
Options
--docs Opens the documentation for azd env refresh in your web browser.
-e, --environment string The name of the environment to use.
-h, --help Gets help for refresh.
--hint string Hint to help identify the environment to refresh
--layer string Provisioning layer to refresh the environment from.
Options inherited from parent commands
-C, --cwd string Sets the current working directory.
--debug Enables debugging and diagnostics logging.
--no-prompt Runs without prompts. Uses existing values; fails if any required value or decision cannot be resolved automatically. Automatically enabled when azd detects a CI/CD or AI-agent environment; set AZD_NON_INTERACTIVE=false to opt out of that automatic enablement.
--docs Opens the documentation for azd env remove in your web browser.
-e, --environment string The name of the environment to use.
--force Skips confirmation before performing removal.
-h, --help Gets help for remove.
Options inherited from parent commands
-C, --cwd string Sets the current working directory.
--debug Enables debugging and diagnostics logging.
--no-prompt Runs without prompts. Uses existing values; fails if any required value or decision cannot be resolved automatically. Automatically enabled when azd detects a CI/CD or AI-agent environment; set AZD_NON_INTERACTIVE=false to opt out of that automatic enablement.
--docs Opens the documentation for azd env select in your web browser.
-h, --help Gets help for select.
Options inherited from parent commands
-C, --cwd string Sets the current working directory.
--debug Enables debugging and diagnostics logging.
-e, --environment string The name of the environment to use.
--no-prompt Runs without prompts. Uses existing values; fails if any required value or decision cannot be resolved automatically. Automatically enabled when azd detects a CI/CD or AI-agent environment; set AZD_NON_INTERACTIVE=false to opt out of that automatic enablement.
--docs Opens the documentation for azd env set in your web browser.
-e, --environment string The name of the environment to use.
--file string Path to .env formatted file to load environment values from.
-h, --help Gets help for set.
Options inherited from parent commands
-C, --cwd string Sets the current working directory.
--debug Enables debugging and diagnostics logging.
--no-prompt Runs without prompts. Uses existing values; fails if any required value or decision cannot be resolved automatically. Automatically enabled when azd detects a CI/CD or AI-agent environment; set AZD_NON_INTERACTIVE=false to opt out of that automatic enablement.
Set a name as a reference to a Key Vault secret in the environment.
Synopsis
You can either create a new Key Vault secret or select an existing one.
The provided name is the key for the .env file which holds the secret reference to the Key Vault secret.
azd env set-secret <name> [flags]
Options
--docs Opens the documentation for azd env set-secret in your web browser.
-e, --environment string The name of the environment to use.
-h, --help Gets help for set-secret.
Options inherited from parent commands
-C, --cwd string Sets the current working directory.
--debug Enables debugging and diagnostics logging.
--no-prompt Runs without prompts. Uses existing values; fails if any required value or decision cannot be resolved automatically. Automatically enabled when azd detects a CI/CD or AI-agent environment; set AZD_NON_INTERACTIVE=false to opt out of that automatic enablement.
Execute commands and scripts with azd environment context.
Synopsis
Execute commands and scripts with full access to azd environment variables.
Commands are run with the azd environment loaded into the child process.
Multiple arguments use direct process execution (no shell wrapping).
A single quoted argument uses shell inline execution.
Examples:
azd exec python script.py # Direct exec (exact argv)
azd exec npm run dev # Direct exec (no shell)
azd exec -- python app.py --port 8000 # Direct exec with flags
azd exec 'echo $AZURE_ENV_NAME' # Inline via shell
azd exec ./setup.sh # Execute script file
azd exec --shell pwsh "Write-Host 'Hello'" # Inline PowerShell
azd exec ./build.sh -- --verbose # Script with args
azd exec -i ./init.sh # Interactive mode
--docs Opens the documentation for azd exec in your web browser.
-e, --environment string The name of the environment to use.
-h, --help Gets help for exec.
-i, --interactive Run in interactive mode (connect stdin)
-s, --shell string Shell to use (bash, sh, zsh, pwsh, powershell, cmd). Auto-detected if not specified.
Options inherited from parent commands
-C, --cwd string Sets the current working directory.
--debug Enables debugging and diagnostics logging.
--no-prompt Runs without prompts. Uses existing values; fails if any required value or decision cannot be resolved automatically. Automatically enabled when azd detects a CI/CD or AI-agent environment; set AZD_NON_INTERACTIVE=false to opt out of that automatic enablement.
--docs Opens the documentation for azd extension in your web browser.
-h, --help Gets help for extension.
Options inherited from parent commands
-C, --cwd string Sets the current working directory.
--debug Enables debugging and diagnostics logging.
-e, --environment string The name of the environment to use.
--no-prompt Runs without prompts. Uses existing values; fails if any required value or decision cannot be resolved automatically. Automatically enabled when azd detects a CI/CD or AI-agent environment; set AZD_NON_INTERACTIVE=false to opt out of that automatic enablement.
Installs one or more extensions by id from a registered extension source.
The --source flag also accepts a registry location (URL or file path). When a
location is given, azd registers it as a source (prompting for a name, and
confirming first for a URL) and then installs from it. If the location is already
registered, azd reuses that source.
You can also pass a self-contained extension bundle as a local .zip path or an
https URL. Remote URLs may be shortened or opaque. azd follows redirects
automatically and warns when a download redirects from HTTPS to HTTP. Bundle
installs aren't tracked for updates; install a newer bundle to update.
--docs Opens the documentation for azd extension install in your web browser.
-f, --force Force installation, including downgrades and reinstalls
-h, --help Gets help for install.
--no-dependencies Install only the specified extension(s) without installing their declared dependencies
-s, --source string The extension source to use for installs. Accepts a registered source name or a registry location (URL or file path) to register and install from.
-v, --version string The version of the extension to install. Cannot be used with an extension bundle
Options inherited from parent commands
-C, --cwd string Sets the current working directory.
--debug Enables debugging and diagnostics logging.
-e, --environment string The name of the environment to use.
--no-prompt Runs without prompts. Uses existing values; fails if any required value or decision cannot be resolved automatically. Automatically enabled when azd detects a CI/CD or AI-agent environment; set AZD_NON_INTERACTIVE=false to opt out of that automatic enablement.
List available extensions from registered extension sources.
The --source flag accepts a registered source name or registry location (URL or
file path). Locations are queried read-only and are not registered. Extensions
from an unregistered location show the location itself in the SOURCE column.
azd extension list [--installed] [flags]
Options
--docs Opens the documentation for azd extension list in your web browser.
-h, --help Gets help for list.
--installed List installed extensions
-s, --source string Filter extensions by registered source name or registry location (URL or file path).
--tags strings Filter extensions by tags
Options inherited from parent commands
-C, --cwd string Sets the current working directory.
--debug Enables debugging and diagnostics logging.
-e, --environment string The name of the environment to use.
--no-prompt Runs without prompts. Uses existing values; fails if any required value or decision cannot be resolved automatically. Automatically enabled when azd detects a CI/CD or AI-agent environment; set AZD_NON_INTERACTIVE=false to opt out of that automatic enablement.
Includes version compatibility, dependencies, and installed dependents.
Uses installed metadata when no registry lists the extension, or a registry lookup fails without --source.
azd extension show <extension-id> [flags]
Options
--docs Opens the documentation for azd extension show in your web browser.
-h, --help Gets help for show.
-s, --source string The registered source name or registry location (URL or file path) to use.
Options inherited from parent commands
-C, --cwd string Sets the current working directory.
--debug Enables debugging and diagnostics logging.
-e, --environment string The name of the environment to use.
--no-prompt Runs without prompts. Uses existing values; fails if any required value or decision cannot be resolved automatically. Automatically enabled when azd detects a CI/CD or AI-agent environment; set AZD_NON_INTERACTIVE=false to opt out of that automatic enablement.
--docs Opens the documentation for azd extension source in your web browser.
-h, --help Gets help for source.
Options inherited from parent commands
-C, --cwd string Sets the current working directory.
--debug Enables debugging and diagnostics logging.
-e, --environment string The name of the environment to use.
--no-prompt Runs without prompts. Uses existing values; fails if any required value or decision cannot be resolved automatically. Automatically enabled when azd detects a CI/CD or AI-agent environment; set AZD_NON_INTERACTIVE=false to opt out of that automatic enablement.
Names must contain 1-64 lowercase ASCII letters, digits, hyphens, or underscores, and must begin and end with a letter or digit. The name 'bundle' is reserved.
azd extension install --source and azd extension update --source also accept a registry URL or file path directly.
azd extension source add [flags]
Options
--docs Opens the documentation for azd extension source add in your web browser.
-h, --help Gets help for add.
-l, --location string The location of the extension source
-n, --name string The source name: 1-64 lowercase letters, digits, hyphens, or underscores.
-t, --type string The type of the extension source. Supported types are 'file' and 'url'
Options inherited from parent commands
-C, --cwd string Sets the current working directory.
--debug Enables debugging and diagnostics logging.
-e, --environment string The name of the environment to use.
--no-prompt Runs without prompts. Uses existing values; fails if any required value or decision cannot be resolved automatically. Automatically enabled when azd detects a CI/CD or AI-agent environment; set AZD_NON_INTERACTIVE=false to opt out of that automatic enablement.
--docs Opens the documentation for azd extension source list in your web browser.
-h, --help Gets help for list.
Options inherited from parent commands
-C, --cwd string Sets the current working directory.
--debug Enables debugging and diagnostics logging.
-e, --environment string The name of the environment to use.
--no-prompt Runs without prompts. Uses existing values; fails if any required value or decision cannot be resolved automatically. Automatically enabled when azd detects a CI/CD or AI-agent environment; set AZD_NON_INTERACTIVE=false to opt out of that automatic enablement.
Remove an extension source with the specified name
azd extension source remove <name> [flags]
Options
--docs Opens the documentation for azd extension source remove in your web browser.
-h, --help Gets help for remove.
Options inherited from parent commands
-C, --cwd string Sets the current working directory.
--debug Enables debugging and diagnostics logging.
-e, --environment string The name of the environment to use.
--no-prompt Runs without prompts. Uses existing values; fails if any required value or decision cannot be resolved automatically. Automatically enabled when azd detects a CI/CD or AI-agent environment; set AZD_NON_INTERACTIVE=false to opt out of that automatic enablement.
Validate an extension source's registry.json file.
Synopsis
Validate an extension source's registry.json file.
Accepts a source name (from 'azd extension source list'), a local file path,
or a URL. Checks required fields, valid capabilities, semver version format,
platform artifact structure, and extension ID format.
--docs Opens the documentation for azd extension source validate in your web browser.
-h, --help Gets help for validate.
--strict Enable strict validation (require checksums)
Options inherited from parent commands
-C, --cwd string Sets the current working directory.
--debug Enables debugging and diagnostics logging.
-e, --environment string The name of the environment to use.
--no-prompt Runs without prompts. Uses existing values; fails if any required value or decision cannot be resolved automatically. Automatically enabled when azd detects a CI/CD or AI-agent environment; set AZD_NON_INTERACTIVE=false to opt out of that automatic enablement.
Also removes unused dependency installs after confirmation.
Use --no-dependencies to keep them; --no-prompt accepts their removal.
Required extensions cannot be removed unless their dependents are also removed
or --force is set.
azd extension uninstall [extension-id...] [flags]
Options
--all Uninstall all installed extensions
--docs Opens the documentation for azd extension uninstall in your web browser.
-f, --force Uninstall even if other installed extensions depend on it
-h, --help Gets help for uninstall.
--no-dependencies Keep dependencies installed for the removed extensions
Options inherited from parent commands
-C, --cwd string Sets the current working directory.
--debug Enables debugging and diagnostics logging.
-e, --environment string The name of the environment to use.
--no-prompt Runs without prompts. Uses existing values; fails if any required value or decision cannot be resolved automatically. Automatically enabled when azd detects a CI/CD or AI-agent environment; set AZD_NON_INTERACTIVE=false to opt out of that automatic enablement.
Update installed extensions to the latest version.
Synopsis
Also updates installed dependencies to compatible versions unless
--no-dependency-updates is set.
Failures return a nonzero exit code. Other extensions continue updating;
completed updates are kept.
azd extension update [extension-id] [flags]
Options
--all Update all installed extensions
--docs Opens the documentation for azd extension update in your web browser.
-h, --help Gets help for update.
--no-dependency-updates Do not update dependencies when updating an extension that has dependencies
-s, --source string The registered source name or registry location (URL or file path) to use for updates.
-v, --version string The version of the extension to update to
Options inherited from parent commands
-C, --cwd string Sets the current working directory.
--debug Enables debugging and diagnostics logging.
-e, --environment string The name of the environment to use.
--no-prompt Runs without prompts. Uses existing values; fails if any required value or decision cannot be resolved automatically. Automatically enabled when azd detects a CI/CD or AI-agent environment; set AZD_NON_INTERACTIVE=false to opt out of that automatic enablement.
--docs Opens the documentation for azd hooks in your web browser.
-h, --help Gets help for hooks.
Options inherited from parent commands
-C, --cwd string Sets the current working directory.
--debug Enables debugging and diagnostics logging.
-e, --environment string The name of the environment to use.
--no-prompt Runs without prompts. Uses existing values; fails if any required value or decision cannot be resolved automatically. Automatically enabled when azd detects a CI/CD or AI-agent environment; set AZD_NON_INTERACTIVE=false to opt out of that automatic enablement.
See also
azd hooks run: Runs the specified hook for the project, provisioning layers, and services
Runs the specified hook for the project, provisioning layers, and services
azd hooks run <name> [flags]
Options
--docs Opens the documentation for azd hooks run in your web browser.
-e, --environment string The name of the environment to use.
-h, --help Gets help for run.
--layer string Only runs hooks for the specified provisioning layer.
--platform string Forces hooks to run for the specified platform.
--service string Only runs hooks for the specified service.
Options inherited from parent commands
-C, --cwd string Sets the current working directory.
--debug Enables debugging and diagnostics logging.
--no-prompt Runs without prompts. Uses existing values; fails if any required value or decision cannot be resolved automatically. Automatically enabled when azd detects a CI/CD or AI-agent environment; set AZD_NON_INTERACTIVE=false to opt out of that automatic enablement.
See also
azd hooks: Develop, test and run hooks for a project.
--docs Opens the documentation for azd infra in your web browser.
-h, --help Gets help for infra.
Options inherited from parent commands
-C, --cwd string Sets the current working directory.
--debug Enables debugging and diagnostics logging.
-e, --environment string The name of the environment to use.
--no-prompt Runs without prompts. Uses existing values; fails if any required value or decision cannot be resolved automatically. Automatically enabled when azd detects a CI/CD or AI-agent environment; set AZD_NON_INTERACTIVE=false to opt out of that automatic enablement.
See also
azd infra generate: Write IaC for your project to disk, allowing you to manually manage it.
Write IaC for your project to disk, allowing you to manually manage it.
azd infra generate [flags]
Options
--docs Opens the documentation for azd infra generate in your web browser.
-e, --environment string The name of the environment to use.
--force Overwrite any existing files without prompting
-h, --help Gets help for generate.
Options inherited from parent commands
-C, --cwd string Sets the current working directory.
--debug Enables debugging and diagnostics logging.
--no-prompt Runs without prompts. Uses existing values; fails if any required value or decision cannot be resolved automatically. Automatically enabled when azd detects a CI/CD or AI-agent environment; set AZD_NON_INTERACTIVE=false to opt out of that automatic enablement.
See also
azd infra: Manage your Infrastructure as Code (IaC).
When used with --template, a new directory is created (named after the template)
and the project is initialized inside it — similar to git clone.
Pass "." as the directory to initialize in the current directory instead.
Re-running init in an initialized project is idempotent: the existing environment is
reused instead of failing. With --no-prompt and no -e, the recorded default environment
is reused.
azd init [flags]
Options
-b, --branch string The template branch to initialize from. Must be used with a template argument (--template or -t).
--docs Opens the documentation for azd init in your web browser.
-e, --environment string The name of the environment to use.
-f, --filter strings The tag(s) used to filter template results. Supports comma-separated values.
--from-code Initializes a new application from your existing code.
-h, --help Gets help for init.
-l, --location string Azure location for the new environment
-m, --minimal Initializes a minimal project.
-s, --subscription string ID of an Azure subscription to use for the new environment
-t, --template string Initializes a new application from a template. You can use a Full URI, <owner>/<repository>, <repository> if it's part of the azure-samples organization, or a local directory path (./dir, ../dir, or absolute path).
--up Provision and deploy to Azure after initializing the project from a template.
Options inherited from parent commands
-C, --cwd string Sets the current working directory.
--debug Enables debugging and diagnostics logging.
--no-prompt Runs without prompts. Uses existing values; fails if any required value or decision cannot be resolved automatically. Automatically enabled when azd detects a CI/CD or AI-agent environment; set AZD_NON_INTERACTIVE=false to opt out of that automatic enablement.
Manage Model Context Protocol (MCP) server. (Alpha)
Options
--docs Opens the documentation for azd mcp in your web browser.
-h, --help Gets help for mcp.
Options inherited from parent commands
-C, --cwd string Sets the current working directory.
--debug Enables debugging and diagnostics logging.
-e, --environment string The name of the environment to use.
--no-prompt Runs without prompts. Uses existing values; fails if any required value or decision cannot be resolved automatically. Automatically enabled when azd detects a CI/CD or AI-agent environment; set AZD_NON_INTERACTIVE=false to opt out of that automatic enablement.
This command starts an MCP server that can be used by MCP clients to access
azd functionality through the Model Context Protocol interface.
azd mcp start [flags]
Options
--docs Opens the documentation for azd mcp start in your web browser.
-h, --help Gets help for start.
Options inherited from parent commands
-C, --cwd string Sets the current working directory.
--debug Enables debugging and diagnostics logging.
-e, --environment string The name of the environment to use.
--no-prompt Runs without prompts. Uses existing values; fails if any required value or decision cannot be resolved automatically. Automatically enabled when azd detects a CI/CD or AI-agent environment; set AZD_NON_INTERACTIVE=false to opt out of that automatic enablement.
See also
azd mcp: Manage Model Context Protocol (MCP) server. (Alpha)
--docs Opens the documentation for azd monitor in your web browser.
-e, --environment string The name of the environment to use.
-h, --help Gets help for monitor.
--live Open a browser to Application Insights Live Metrics. Live Metrics is currently not supported for Python apps.
--logs Open a browser to Application Insights Logs.
--overview Open a browser to Application Insights Overview Dashboard.
Options inherited from parent commands
-C, --cwd string Sets the current working directory.
--debug Enables debugging and diagnostics logging.
--no-prompt Runs without prompts. Uses existing values; fails if any required value or decision cannot be resolved automatically. Automatically enabled when azd detects a CI/CD or AI-agent environment; set AZD_NON_INTERACTIVE=false to opt out of that automatic enablement.
Packages the project's code to be deployed to Azure.
azd package <service> [flags]
Options
--all Packages all services that are listed in azure.yaml
--docs Opens the documentation for azd package in your web browser.
-e, --environment string The name of the environment to use.
-h, --help Gets help for package.
--output-path string File or folder path where the generated packages will be saved.
Options inherited from parent commands
-C, --cwd string Sets the current working directory.
--debug Enables debugging and diagnostics logging.
--no-prompt Runs without prompts. Uses existing values; fails if any required value or decision cannot be resolved automatically. Automatically enabled when azd detects a CI/CD or AI-agent environment; set AZD_NON_INTERACTIVE=false to opt out of that automatic enablement.
--docs Opens the documentation for azd pipeline in your web browser.
-h, --help Gets help for pipeline.
Options inherited from parent commands
-C, --cwd string Sets the current working directory.
--debug Enables debugging and diagnostics logging.
-e, --environment string The name of the environment to use.
--no-prompt Runs without prompts. Uses existing values; fails if any required value or decision cannot be resolved automatically. Automatically enabled when azd detects a CI/CD or AI-agent environment; set AZD_NON_INTERACTIVE=false to opt out of that automatic enablement.
See also
azd pipeline config: Configure your deployment pipeline to connect securely to Azure. (Beta)
Configure your deployment pipeline to connect securely to Azure. (Beta)
azd pipeline config [flags]
Options
-m, --applicationServiceManagementReference string Service Management Reference. References application or service contact information from a Service or Asset Management database. This value must be a Universally Unique Identifier (UUID). You can set this value globally by running azd config set pipeline.config.applicationServiceManagementReference <UUID>.
--auth-type string The authentication type used between the pipeline provider and Azure for deployment. Valid values: federated, client-credentials. Both the GitHub and Azure DevOps providers default to federated (OIDC) credentials.
--docs Opens the documentation for azd pipeline config in your web browser.
-e, --environment string The name of the environment to use.
-h, --help Gets help for config.
--principal-id string The client id of the service principal to use to grant access to Azure resources as part of the pipeline.
--principal-name string The name of the service principal to use to grant access to Azure resources as part of the pipeline.
--principal-role stringArray The roles to assign to the service principal. By default the service principal will be granted the Contributor and User Access Administrator roles. (default [Contributor,User Access Administrator])
--provider string The pipeline provider to use (github for Github Actions and azdo for Azure Pipelines).
--remote-name string The name of the git remote to configure the pipeline to run on. (default "origin")
Options inherited from parent commands
-C, --cwd string Sets the current working directory.
--debug Enables debugging and diagnostics logging.
--no-prompt Runs without prompts. Uses existing values; fails if any required value or decision cannot be resolved automatically. Automatically enabled when azd detects a CI/CD or AI-agent environment; set AZD_NON_INTERACTIVE=false to opt out of that automatic enablement.
See also
azd pipeline: Manage and configure your deployment pipelines.
--docs Opens the documentation for azd provision in your web browser.
-e, --environment string The name of the environment to use.
-h, --help Gets help for provision.
-l, --location string Azure location for the new environment
--no-state (Bicep only) Forces a fresh deployment based on current Bicep template files, ignoring any stored deployment state.
--preview Preview changes to Azure resources.
--subscription string ID of an Azure subscription to use for the new environment
Options inherited from parent commands
-C, --cwd string Sets the current working directory.
--debug Enables debugging and diagnostics logging.
--no-prompt Runs without prompts. Uses existing values; fails if any required value or decision cannot be resolved automatically. Automatically enabled when azd detects a CI/CD or AI-agent environment; set AZD_NON_INTERACTIVE=false to opt out of that automatic enablement.
Publish a service image or reuse an existing passthrough image.
azd publish <service> [flags]
Options
--all Publishes all services that are listed in azure.yaml
--docs Opens the documentation for azd publish in your web browser.
-e, --environment string The name of the environment to use.
--from-package string Publishes the service from a container image (image tag).
-h, --help Gets help for publish.
--to string The target container image in the form '[registry/]repository[:tag]' to publish to.
Options inherited from parent commands
-C, --cwd string Sets the current working directory.
--debug Enables debugging and diagnostics logging.
--no-prompt Runs without prompts. Uses existing values; fails if any required value or decision cannot be resolved automatically. Automatically enabled when azd detects a CI/CD or AI-agent environment; set AZD_NON_INTERACTIVE=false to opt out of that automatic enablement.
--all Restores all services that are listed in azure.yaml
--docs Opens the documentation for azd restore in your web browser.
-e, --environment string The name of the environment to use.
-h, --help Gets help for restore.
Options inherited from parent commands
-C, --cwd string Sets the current working directory.
--debug Enables debugging and diagnostics logging.
--no-prompt Runs without prompts. Uses existing values; fails if any required value or decision cannot be resolved automatically. Automatically enabled when azd detects a CI/CD or AI-agent environment; set AZD_NON_INTERACTIVE=false to opt out of that automatic enablement.
Display information about your project and its resources.
azd show [resource-name|resource-id] [flags]
Options
--docs Opens the documentation for azd show in your web browser.
-e, --environment string The name of the environment to use.
-h, --help Gets help for show.
--show-secrets Unmask secrets in output.
Options inherited from parent commands
-C, --cwd string Sets the current working directory.
--debug Enables debugging and diagnostics logging.
--no-prompt Runs without prompts. Uses existing values; fails if any required value or decision cannot be resolved automatically. Automatically enabled when azd detects a CI/CD or AI-agent environment; set AZD_NON_INTERACTIVE=false to opt out of that automatic enablement.
--docs Opens the documentation for azd template in your web browser.
-h, --help Gets help for template.
Options inherited from parent commands
-C, --cwd string Sets the current working directory.
--debug Enables debugging and diagnostics logging.
-e, --environment string The name of the environment to use.
--no-prompt Runs without prompts. Uses existing values; fails if any required value or decision cannot be resolved automatically. Automatically enabled when azd detects a CI/CD or AI-agent environment; set AZD_NON_INTERACTIVE=false to opt out of that automatic enablement.
--docs Opens the documentation for azd template list in your web browser.
-f, --filter strings The tag(s) used to filter template results. Supports comma-separated values.
-h, --help Gets help for list.
-s, --source string Filters templates by source.
Options inherited from parent commands
-C, --cwd string Sets the current working directory.
--debug Enables debugging and diagnostics logging.
-e, --environment string The name of the environment to use.
--no-prompt Runs without prompts. Uses existing values; fails if any required value or decision cannot be resolved automatically. Automatically enabled when azd detects a CI/CD or AI-agent environment; set AZD_NON_INTERACTIVE=false to opt out of that automatic enablement.
--docs Opens the documentation for azd template show in your web browser.
-h, --help Gets help for show.
Options inherited from parent commands
-C, --cwd string Sets the current working directory.
--debug Enables debugging and diagnostics logging.
-e, --environment string The name of the environment to use.
--no-prompt Runs without prompts. Uses existing values; fails if any required value or decision cannot be resolved automatically. Automatically enabled when azd detects a CI/CD or AI-agent environment; set AZD_NON_INTERACTIVE=false to opt out of that automatic enablement.
--docs Opens the documentation for azd template source in your web browser.
-h, --help Gets help for source.
Options inherited from parent commands
-C, --cwd string Sets the current working directory.
--debug Enables debugging and diagnostics logging.
-e, --environment string The name of the environment to use.
--no-prompt Runs without prompts. Uses existing values; fails if any required value or decision cannot be resolved automatically. Automatically enabled when azd detects a CI/CD or AI-agent environment; set AZD_NON_INTERACTIVE=false to opt out of that automatic enablement.
Adds an azd template source with the specified key. (Beta)
Synopsis
The key can be any value that uniquely identifies the template source, with well-known values being:
・default: Default templates
・awesome-azd: Templates from https://aka.ms/awesome-azd
azd template source add <key> [flags]
Options
--docs Opens the documentation for azd template source add in your web browser.
-h, --help Gets help for add.
-l, --location string Location of the template source. Required when using type flag.
-n, --name string Display name of the template source.
-t, --type string Kind of the template source. Supported types are 'file', 'url' and 'gh'.
Options inherited from parent commands
-C, --cwd string Sets the current working directory.
--debug Enables debugging and diagnostics logging.
-e, --environment string The name of the environment to use.
--no-prompt Runs without prompts. Uses existing values; fails if any required value or decision cannot be resolved automatically. Automatically enabled when azd detects a CI/CD or AI-agent environment; set AZD_NON_INTERACTIVE=false to opt out of that automatic enablement.
--docs Opens the documentation for azd template source list in your web browser.
-h, --help Gets help for list.
Options inherited from parent commands
-C, --cwd string Sets the current working directory.
--debug Enables debugging and diagnostics logging.
-e, --environment string The name of the environment to use.
--no-prompt Runs without prompts. Uses existing values; fails if any required value or decision cannot be resolved automatically. Automatically enabled when azd detects a CI/CD or AI-agent environment; set AZD_NON_INTERACTIVE=false to opt out of that automatic enablement.
--docs Opens the documentation for azd template source remove in your web browser.
-h, --help Gets help for remove.
Options inherited from parent commands
-C, --cwd string Sets the current working directory.
--debug Enables debugging and diagnostics logging.
-e, --environment string The name of the environment to use.
--no-prompt Runs without prompts. Uses existing values; fails if any required value or decision cannot be resolved automatically. Automatically enabled when azd detects a CI/CD or AI-agent environment; set AZD_NON_INTERACTIVE=false to opt out of that automatic enablement.
Discover, install, update, and check status of Azure development tools.
Options
--docs Opens the documentation for azd tool in your web browser.
-h, --help Gets help for tool.
Options inherited from parent commands
-C, --cwd string Sets the current working directory.
--debug Enables debugging and diagnostics logging.
-e, --environment string The name of the environment to use.
--no-prompt Runs without prompts. Uses existing values; fails if any required value or decision cannot be resolved automatically. Automatically enabled when azd detects a CI/CD or AI-agent environment; set AZD_NON_INTERACTIVE=false to opt out of that automatic enablement.
--docs Opens the documentation for azd tool check in your web browser.
-h, --help Gets help for check.
Options inherited from parent commands
-C, --cwd string Sets the current working directory.
--debug Enables debugging and diagnostics logging.
-e, --environment string The name of the environment to use.
--no-prompt Runs without prompts. Uses existing values; fails if any required value or decision cannot be resolved automatically. Automatically enabled when azd detects a CI/CD or AI-agent environment; set AZD_NON_INTERACTIVE=false to opt out of that automatic enablement.
--agent strings Install the skill for the specified agent(s): copilot, claude. Use --agent all for every detected agent (skill tools only)
--all Install all recommended tools
--docs Opens the documentation for azd tool install in your web browser.
--dry-run Preview what would be installed without making changes
-h, --help Gets help for install.
Options inherited from parent commands
-C, --cwd string Sets the current working directory.
--debug Enables debugging and diagnostics logging.
-e, --environment string The name of the environment to use.
--no-prompt Runs without prompts. Uses existing values; fails if any required value or decision cannot be resolved automatically. Automatically enabled when azd detects a CI/CD or AI-agent environment; set AZD_NON_INTERACTIVE=false to opt out of that automatic enablement.
--docs Opens the documentation for azd tool list in your web browser.
-h, --help Gets help for list.
Options inherited from parent commands
-C, --cwd string Sets the current working directory.
--debug Enables debugging and diagnostics logging.
-e, --environment string The name of the environment to use.
--no-prompt Runs without prompts. Uses existing values; fails if any required value or decision cannot be resolved automatically. Automatically enabled when azd detects a CI/CD or AI-agent environment; set AZD_NON_INTERACTIVE=false to opt out of that automatic enablement.
--docs Opens the documentation for azd tool show in your web browser.
-h, --help Gets help for show.
Options inherited from parent commands
-C, --cwd string Sets the current working directory.
--debug Enables debugging and diagnostics logging.
-e, --environment string The name of the environment to use.
--no-prompt Runs without prompts. Uses existing values; fails if any required value or decision cannot be resolved automatically. Automatically enabled when azd detects a CI/CD or AI-agent environment; set AZD_NON_INTERACTIVE=false to opt out of that automatic enablement.
--agent strings Uninstall the skill from the specified agent(s): copilot, claude. Use --agent all (or omit --agent) to remove the skill from every agent it is installed through (skill tools only)
--all Uninstall all installed tools
--docs Opens the documentation for azd tool uninstall in your web browser.
--dry-run Preview what would be uninstalled without making changes
-h, --help Gets help for uninstall.
Options inherited from parent commands
-C, --cwd string Sets the current working directory.
--debug Enables debugging and diagnostics logging.
-e, --environment string The name of the environment to use.
--no-prompt Runs without prompts. Uses existing values; fails if any required value or decision cannot be resolved automatically. Automatically enabled when azd detects a CI/CD or AI-agent environment; set AZD_NON_INTERACTIVE=false to opt out of that automatic enablement.
--agent strings Update the skill for the specified agent(s): copilot, claude. Use --agent all for every detected agent (skill tools only)
--all Update all installed tools
--docs Opens the documentation for azd tool update in your web browser.
--dry-run Preview what would be updated without making changes
-h, --help Gets help for update.
Options inherited from parent commands
-C, --cwd string Sets the current working directory.
--debug Enables debugging and diagnostics logging.
-e, --environment string The name of the environment to use.
--no-prompt Runs without prompts. Uses existing values; fails if any required value or decision cannot be resolved automatically. Automatically enabled when azd detects a CI/CD or AI-agent environment; set AZD_NON_INTERACTIVE=false to opt out of that automatic enablement.
Provision and deploy your project to Azure with a single command.
azd up [flags]
Options
--docs Opens the documentation for azd up in your web browser.
-e, --environment string The name of the environment to use.
-h, --help Gets help for up.
-l, --location string Azure location for the new environment
--subscription string ID of an Azure subscription to use for the new environment
Options inherited from parent commands
-C, --cwd string Sets the current working directory.
--debug Enables debugging and diagnostics logging.
--no-prompt Runs without prompts. Uses existing values; fails if any required value or decision cannot be resolved automatically. Automatically enabled when azd detects a CI/CD or AI-agent environment; set AZD_NON_INTERACTIVE=false to opt out of that automatic enablement.
--channel string Update channel: stable or daily.
--check-interval-hours int Override the update check interval in hours.
--docs Opens the documentation for azd update in your web browser.
-h, --help Gets help for update.
Options inherited from parent commands
-C, --cwd string Sets the current working directory.
--debug Enables debugging and diagnostics logging.
-e, --environment string The name of the environment to use.
--no-prompt Runs without prompts. Uses existing values; fails if any required value or decision cannot be resolved automatically. Automatically enabled when azd detects a CI/CD or AI-agent environment; set AZD_NON_INTERACTIVE=false to opt out of that automatic enablement.
--docs Opens the documentation for azd version in your web browser.
-h, --help Gets help for version.
Options inherited from parent commands
-C, --cwd string Sets the current working directory.
--debug Enables debugging and diagnostics logging.
-e, --environment string The name of the environment to use.
--no-prompt Runs without prompts. Uses existing values; fails if any required value or decision cannot be resolved automatically. Automatically enabled when azd detects a CI/CD or AI-agent environment; set AZD_NON_INTERACTIVE=false to opt out of that automatic enablement.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Make deployment failures easier to understand in
azdprogress, final errors, and existing telemetry.Changes
--timeout/AZD_DEPLOY_TIMEOUTvalues asinternal.invalid_args, service timeouts asinternal.timeout, and malformed extension deploy responses asinternal.extension_invalid_response.extension.id,extension.version, andextension.eventfields on failed command spans;error.chain.typesreflects the cause chain. No new telemetry events, fields, or sending path were added.Validation
go test ./cmd/middleware ./internal/cmdpassed, including timeout UX regressions.go test ./pkg/projectpassed after rebasing onto currentmain.golangci-lint run ./cmd/middleware ./internal/cmdpassed.go tool mage preflightdid not pass on Windows: an unchanged schema-formatting failure (also onorigin/main), a container playback test requiring Docker/Podman, and tests in unchangedcmdandpkg/tools/language. Formatting, modernization, copyright, spelling, build, and lint passed.Telemetry Change Checklist
New Fields
fields/fields.go; extension-suppliedext.*values are covered by the extension's own review instead: N/A, existing fields reusedSystemMetadata/FeatureInsightdocs/specs/metrics-audit/telemetry-schema.mdNew Events
events/events.go: N/A, no new eventconstwhose Go identifier containsEvent: N/Adocs/specs/metrics-audit/telemetry-schema.md: N/Aprefix.noun.verb): N/APrivacy
CustomerContentemitted in telemetryTesting
Downstream
Documentation
Closes #10160