June 5th, 2025
8 reactions

Azure Developer CLI (azd) – June 2025

This post shares the details of the latest changes to the Azure Developer CLI (azd) in releases 1.16.0, 1.16.1, and 1.17.0. We invite you to join our June release discussion on GitHub with questions and comments.

This month’s release has new features, bug fixes, new docs, and a batch of new templates. Before we dive in, we have an opportunity for you to shape the future of Terraform and azd with this brief (we promise) survey. The community wants more Terraform support (currently in beta)–and we heard you! Thank you for being vocal about what is important to you.

Ok, let’s get into it. Here’s what’s new with azd this month.

First, we updated our main azd menu to bring a cleaner organization to azd features and how to use them, as well as creating sections for the beta and alpha commands that you can start experimenting with in your project.

Screenshot of the reorganized Azure Developer CLI menu showing categorized commands including standard, beta, and alpha features

New features

Extensions

Did you see the new alpha feature in the menu? The ability to use and build extensions are the newest alpha feature. Extensions have the potential to bring developer tools closer to working with the azd CLI in inner workflow. This new feature demonstrates the potential to customize azd to the specific needs of your dev workflow.

We have several extensions in the works and today you can try the experience of building an extension with the developer extension.

# Enable the `azd` extensions alpha feature
azd config set alpha.extensions on
# Install the `azd` developer extension
azd extension install microsoft.azd.extensions

Check out the documentation here:

Compose

We moved the compose feature azd add to beta for new projects (greenfield).

  • [5242] Promote azd add and composability features to Beta.
    • Remove alpha.compose alpha feature.
    • Use azd add to add Azure components to your project. azd add doesn’t currently support Aspire projects or most azd templates.
    • Use azd show <resource name> or azd show <Azure resource ID> to view details about a specific resource.

As part of moving compose to beta, we’re also promoting the azd infra generate command to beta (renamed from azd infra synth).

  • [5260] Rename azd infra synth to azd infra generate (azd infra gen for short) and promote to Beta.
    • Remove alpha.infraSynth alpha feature.
    • azd infra synth will continue to work as an alias of azd infra generate, but users are encouraged to use the new command names as azd infra synth may be removed in a future release.

Other features

  • [5173] Support for Azure App Service. The azd show command now includes resource information for Azure App Service deployments.
  • [5158] Configure Azure AI Foundry hub to use identity-based storage access. This improvement enhances security by using managed identities for storage access in Azure AI Foundry hub compose scenarios.
  • [5143], [5183], [5185] Update azd pipeline config. Auto-detect required variables and secrets from infrastructure provider parameters.
  • [5190] Interactive controls for GitHub Actions. Manage existing GitHub Actions variables and secrets during azd pipeline configuration.
  • [5155] Nested extension namespaces. Adds support for organizing extensions in hierarchical namespaces.
  • [5249] Add support for deploying a single service in .NET Aspire projects via vs-server.
  • [5157] Update azd add integration with AI Foundry to use simplified 1RP setup with all models under a single AI Services account.
  • [5214] Add Linux to Homebrew formulae. Thanks @heaths for the contribution!
  • [5204] Add login guard middleware to autoprompt for user login in key commands if unauthenticated.
  • [5248] azd pipeline config support for configuring CI/CD using Managed Identities.
  • [5200] Update Bicep param prompting to support a default selected option, allowing azd to autoselect it with --no-prompt.

Breaking changes

  • [5242], [5260] When initializing from app code or minimal project, the infra/ folder is no longer generated. azd now manages infrastructure in-memory by default, but you can still generate IaC to disk to manually manage your infrastructure using azd infra generate (or azd infra gen for short).
  • [5242] When initializing from app code or minimal project, environment initialization is now deferred to provision time (for example, azd up), unless the --environment <env name> flag is passed to the azd init command or the AZURE_ENV_NAME environment variable is set.
  • [5157] AI Services models added through azd add require an updated version of the Azure AI Foundry SDK client library that supports project endpoints (AZURE_AI_PROJECT_ENDPOINT=https://<account-name>.services.ai.azure.com/api/projects/<project-name>) instead of project connection strings (AZURE_AI_PROJECT_CONNECTION_STRING=eastus.api.azureml.ms;<subscription id>;<resource group>;<project name>).

Bugs fixed

  • [5176] Resource addition improvements. Prevent same resource being added under ‘uses’ multiple times with azd add.
  • [5176] Resource addition improvements. Fix azd add preview for MySQL and Postgres with other UX improvements.
  • [5192] Bicep generation fix. Fix Bicep generation for compose projects with implicit Key Vault dependency.
  • [5198] Error message improvements. Fixes error messages surfaced to users that contain internal implementation details.
  • [5187] Improve the UX of azd init by displaying neutral message when user declines initializing in a directory that isn’t empty.
  • [5255] Fix vs-server crash when telemetry is disabled.
  • [5199] Avoid unnecessary Azure Container Registry (ACR) login for Aspire projects using only public images.
  • [5246] Remove explicit Azure Container Apps (ACA) Environment Contributor role assignment for Aspire projects. Thanks @eerhardt for the contribution!

Other changes

  • [5194] Improved help text organization. Reorganize azd help text with updated command sections (Getting started, Azure resources, Settings, Beta, Alpha, Extensions).
  • [5189] Environment name clarity. Clarify in environment prompt that the name must be unique.
  • [5187] Better template initialization. Improve the confirmation when declining to initialize template a directory that isn’t empty.
  • [5159] Aspire detection message update. Update Aspire detection message to not specifically mention ACA.
  • [5138] Bicep CLI update. Update Bicep CLI to v0.35.1.
  • [5261] Update dependencies to mitigate CVE-2025-30204.
  • [5245] Update Bicep CLI to v0.36.1.
  • [5212] Update changelog casing in developer extension release pipelines.
  • [5209] Deprecate internal registry extension in favor of azd developer extension.

New docs

We published several new docs on Microsoft Learn to help you get the most out of the Azure Developer CLI:

New:

Updated:

New templates

In addition to a batch of new templates published in May, we also added a new tag for “Model Context Protocol (MCP)” labeled as MCP. The new MCP tag was applied to several existing templates. Now it’s easier to see the subset of templates that are MCP server examples by selecting the MCP tag.

New templates this month include:

Thank you to the contributors who added enhancements, features, and new templates. We’re grateful for your contributions!

Do you have an azd template you’d like to share with the rest of the community? You can learn how to with our contributor guide.

New workshop

At Microsoft Build last month, we held a workshop demonstrating how to use azd and GitHub Copilot for Azure to build an application with AI Search and AI Chat, and deploy it to Azure Container Apps.

If you want to go through the tutorial, we made it available for anyone to try.

New to azd?

Welcome! You can use azd from:

  • Your terminal of choice on Windows, Linux, or macOS.
  • Visual Studio Code or GitHub Codespaces by downloading the extension from the Marketplace, or installing it directly from the extension view (Ctrl + Shift + X for Windows or Cmd + Shift + X for macOS) in Visual Studio Code.
  • Visual Studio by enabling the preview feature flag.

Learn more about the Azure Developer CLI from our official documentation. If you run into any problems or have suggestions, file an issue or start a discussion in the Azure Developer CLI repository. You can also reference our troubleshooting documentation.

0 comments