azdev
Microsoft Azure CLI Developer Tools
What it is and what it does
azdev is Microsoft's official developer toolkit for contributing to Azure CLI and its extensions. It bundles commands for environment setup, code style checking, linting, testing, and building extensions into a single CLI interface. The tool is intended for developers working locally on Azure CLI modules and extensions, automating repetitive setup and validation tasks that would otherwise require manual coordination of multiple tools (pytest, flake8, pylint, sphinx, tox, and others).
The package includes commands to add or remove extensions, generate and verify command indices, build extension wheels, and run the full test and lint suite. It also provides utilities for managing breaking changes and extension versioning. Because it bundles so many dependencies—testing frameworks, linters, documentation tools, and Azure-specific libraries—it trades a larger footprint for convenience in a development-only context.
Use it for:
- Set up a local development environment for Azure CLI module contribution with a single command.
- Run style checks and linting across an Azure CLI module or extension before submitting a pull request.
- Execute the full test suite for an extension using pytest and tox with azdev's configuration.
- Build and package an Azure CLI extension as a wheel for distribution.
- Generate and verify Azure CLI command and help indices for packaged releases.
- Add or remove extensions from a local Azure CLI development environment and keep the command index in sync.
Worth the install?
AI-flagged interpretation of the facts on this page — verify before relying
azdev is a command-line tool that helps developers set up, test, lint, and build Azure CLI modules and extensions locally.
Yes, if you are actively developing Azure CLI modules or extensions. The tool is actively maintained, has no known vulnerabilities, and is designed specifically to streamline the Azure CLI contribution workflow. Install it only in a development environment or virtual machine—the package explicitly warns against using it with untrusted input or in production contexts. Not relevant for end users of Azure CLI.
Install
azdev on PyPI
pip
pip install azdevuv
uv add azdevpoetry
poetry add azdevInstalling azdev
Before you install
Low install friction with a pure-Python wheel. Active maintenance with a release 36 days ago; supports Python 3.10–3.14. Requires 23 runtime dependencies including testing (pytest, tox), linting (flake8, pylint), and Azure-specific tools, which is typical for a developer-facing CLI tool.
License in practice
MIT license permits free use, modification, and distribution with minimal restrictions. Suitable for both open-source and proprietary projects.
Quickstart
pip install azdev
azdev setup
azdev test <module-or-extension>
azdev style <module-or-extension>
Requires Python 3.10 or later. Designed for local development only; the package documentation explicitly warns against using it with untrusted input or behind another application.
Verify before relying
- Whether all 23 runtime dependencies are truly required at runtime or some are optional/development-only.
- Performance characteristics when working with large extension repositories.
- Compatibility with non-standard Azure CLI repository layouts or forks.
Package facts
| License | MIT (permissive) |
| Python support | supports the current Python release (>=3.10) |
| Install friction | low — pure-Python wheel |
| Runtime dependencies | 23 — azure-multiapi-storage, docutils, flake8, gitpython, jinja2, knack, pylint, pytest-xdist, pytest-forked, pytest, pyyaml, requests, sphinx, tox, jsbeautifier, deepdiff, azure-cli-diff-tool, packaging, pkginfo, tqdm, setuptools, wheel, microsoft-security-utilities-secret-masker |
| Maintenance | actively maintained — 36 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 220,373/month — #9,302 on PyPI (30-day window, as of 2026-08-14) |
| Known vulnerabilities | none known (OSV.dev, checked 2026-08-14) |
Evidence: azdev-0.2.13-py3-none-any.whl
Keywords: azure
Tags
More Build Tools packages
Provides reusable utilities for Python…
permissive · top 100 on PyPI
tqdmWraps any iterable to display a real-time…
copyleft · top 100 on PyPI
pippip is the standard installer for Python…
permissive · top 100 on PyPI
hatchlingHatchling is a standards-compliant Python build…
permissive · top 100 on PyPI
grpcio-toolsGenerates Python gRPC service stubs and message…
permissive · top 1,000 on PyPI
pre-commitpre-commit is a framework for installing and…
permissive · top 1,000 on PyPI
azure-cli-diff-toolCompares and diffs Azure CLI metadata files…
permissive · top 15,000 on PyPI
az.cliExecutes Azure CLI commands from Python and…
permissive · top 15,000 on PyPI
azure-cliAzure CLI is a command-line tool for managing…
permissive · top 5,000 on PyPI
azure-cli-coreProvides the core Python library and CLI…
permissive · top 5,000 on PyPI
azure-devopsProvides Python bindings to the Azure DevOps…
permissive · top 5,000 on PyPI
vstsProvides Python bindings to the Azure DevOps…
permissive · top 15,000 on PyPI
azure-cli-sqlA command-line module for the Azure CLI that…
permissive · top 15,000 on PyPI
azure-cli-acrProvides the Azure CLI 'acr' command module for…
permissive · top 15,000 on PyPI
azure-cli-appserviceProvides Azure CLI commands for managing App…
permissive · top 15,000 on PyPI
azure-cli-telemetryCollects and uploads telemetry data for the…
permissive · top 5,000 on PyPI