Note
Access to this page requires authorization. You can try signing in or changing directories.
Access to this page requires authorization. You can try changing directories.
Manage Azure development tools with
The Azure Developer CLI (azd) includes a built-in azd tool command group for discovering, installing, upgrading, and checking the status of common tools used to build and ship Azure applications. It wraps the underlying package managers on each platform (such as winget, brew, apt, npm, and the VS Code code CLI) behind a consistent set of subcommands, and supports both interactive use and automation.
Common use cases for azd tool include:
- Installing all recommended Azure development tools on a new machine with a single command.
- Standardizing the development environment across a team or set of CI agents.
- Auditing which Azure tools (and which versions) are installed on a given machine.
- Checking for and applying updates to installed tools.
- Scripting tool setup in pipelines using non-interactive flags and JSON output.
Built-in tools
The built-in registry includes the following tools. Use the category and priority columns to determine which tools apply to a given workflow.
| Id | Name | Category | Priority | Typical install strategy |
|---|---|---|---|---|
az-cli |
Azure CLI | cli |
Recommended | winget / brew / apt |
github-copilot-cli |
GitHub Copilot CLI | cli |
Recommended | winget / brew / npm |
vscode-azure-tools |
Azure Tools (VS Code) | extension |
Recommended | code CLI |
vscode-bicep |
Bicep (VS Code) | extension |
Recommended | code CLI |
vscode-github-copilot |
GitHub Copilot (VS Code) | extension |
Optional | code CLI |
azure-mcp-server |
Azure MCP Server | server |
Optional | npm |
azd-ai-extensions |
azd AI Extensions |
library |
Optional | azd extension |
The exact install strategy depends on the operating system and the package managers available on the machine.
Note
VS Code extensions require the code CLI to be available on the PATH. If code isn't available, the tools show as not installed and you can't install them through azd tool.
Commands overview
The azd tool command group includes the following subcommands.
| Command | Description |
|---|---|
azd tool |
Starts an interactive flow that shows installed and available tools and prompts for tools to install in one step. |
azd tool list |
Lists all registered tools, including install status, version, category, and priority. |
azd tool show <id> |
Shows detailed information for a specific tool, including per-platform install strategies and the project website. |
azd tool check |
Checks installed tools for available updates. |
azd tool install [ids...] |
Installs one or more tools by id. |
azd tool upgrade [ids...] |
Upgrades one or more installed tools. |
All commands support --output json for machine-readable output suitable for scripts and pipelines.
Common flags
The following flags are available on install and upgrade:
--all: Installs or upgrades every eligible tool. Forinstall, this command includes all recommended tools. Forupgrade, this command includes all installed tools that have updates available.--dry-run: Previews the actionsazdwould take without making any changes.
The following options control prompting behavior:
--no-prompt: Suppresses interactive prompts. Useful in scripts.AZD_NON_INTERACTIVE=true: Environment variable equivalent to--no-prompt.AZD_SKIP_FIRST_RUN=true: Disables the first-run tool-check prompt.
Sample use case: bootstrap a development machine
To set up the complete set of recommended Azure development tools on a new machine, run the following command:
azd tool install --all
This command installs every tool marked as recommended in the registry by using the appropriate package manager for the current platform. To preview the install actions without making changes, add --dry-run:
azd tool install --all --dry-run
To keep installed tools current, run the following commands:
azd tool check
azd tool upgrade --all
List installed and available tools
Run azd tool list to display every registered tool, its install status, and its installed version:
$ azd tool list
Id Name Category Priority Status Version
───────────────────── ──────────────────────── ────────── ──────────── ────────────── ────────
az-cli Azure CLI cli recommended Installed 2.67.0
github-copilot-cli GitHub Copilot CLI cli recommended Not Installed
vscode-azure-tools Azure Tools (VS Code) extension recommended Installed 0.9.0
vscode-bicep Bicep (VS Code) extension recommended Installed 0.30.0
vscode-github-copilot GitHub Copilot (VS Code) extension optional Not Installed
azure-mcp-server Azure MCP Server server optional Not Installed
azd-ai-extensions azd AI Extensions library optional Not Installed
To return the same data as JSON for scripting, run:
azd tool list --output json
Show details for a tool
Run azd tool show <id> to inspect a specific tool, including the install strategies that apply to each supported platform and the project website:
azd tool show az-cli
Install one or more tools
Pass one or more tool id values to install specific tools:
azd tool install az-cli vscode-bicep
To install every recommended tool, use --all:
azd tool install --all
To preview the install commands without running them, add --dry-run:
azd tool install az-cli --dry-run
Running azd tool with no subcommand starts an interactive flow that displays installed tools, allows selection of additional tools, and installs them in a single step.
Check for updates
Run azd tool check to scan installed tools for available updates:
azd tool check
azd also runs a periodic background update check and surfaces non-intrusive notifications when newer versions of registered tools are available.
Upgrade tools
Upgrade specific tools by passing their id values:
azd tool upgrade az-cli github-copilot-cli
Upgrade everything that has an available update:
azd tool upgrade --all
Preview the upgrade plan without applying it:
azd tool upgrade --all --dry-run
First-run experience
The first time a workflow command such as azd init, azd up, or azd deploy runs, azd performs a one-time tool check and prompts to review or install recommended tools.
Use any of the following options to skip or disable the first-run prompt:
- Pass
--no-prompton the workflow command. - Set the environment variable
AZD_SKIP_FIRST_RUN=true. - Run in a detected CI environment.
azdautomatically bypasses the prompt whenCI,TF_BUILD, orGITHUB_ACTIONSis set.
CI and non-interactive scenarios
The azd tool command group supports pipelines and scripts through the following options:
- Use positional
idarguments withinstallandupgradeto avoid interactive selection. - Add
--no-promptor setAZD_NON_INTERACTIVE=trueto suppress prompts. - Use
--output jsonto capture structured results for downstream steps. - Rely on CI auto-detection, which suppresses the first-run prompt and background update notifications.
The following example installs the Azure CLI and the Bicep extension in a pipeline step:
azd tool install az-cli vscode-bicep --no-prompt --output json