Azure Developer CLI (azd) 拡張機能は、Azure Developer CLI の機能を拡張するモジュール式コンポーネントです。 これらの機能を使用すると、新しい機能の追加、ワークフローの自動化、CLI から直接他のサービスとの統合を行うことができます。 拡張機能を使用して、進化するチームのニーズとAzureシナリオに合わせてazdを調整します。
注
azd拡張機能フレームワークは一般提供されています。 個々の拡張機能または機能には、独自のプレビュー状態がある場合があります。
拡張機能ソースを管理する
要件の拡大に合わせて拡張機能を検出、インストール、更新できます。 拡張機能ソースは、配布と管理を処理します。
- 拡張ソースは、使用可能な
azd拡張機能の一覧を提供するファイルまたは URL ベースのマニフェストです。 - プライベート、ローカル、またはパブリック レジストリに接続するカスタム拡張機能ソースを追加できます。
- 拡張機能ソースは、NuGet または Node パッケージ マネージャー (NPM) フィードと同等の概念であり、 公式の拡張レジストリ スキーマに従う必要があります。
azd では、拡張機能を解決するいくつかの方法がサポートされています。
-
公式の拡張ソース レジストリは、
azdで事前に構成されており、https://aka.ms/azd/extensions/registryでホストされています。 - URL ベースのソースは 、チームがパブリックまたはプライベート配布のためにホストするリモート レジストリ マニフェストを参照します。
- ファイル ベースのソースは 、オフラインで使用したりローカル開発したりするためにローカル レジストリ マニフェストを参照します。
- 開発レジストリと夜間レジストリは、進行中の作業用のオプトイン ソースであり、ファースト パーティの拡張機能を自動的に構築します。 運用環境のワークフローではなく、シナリオをテストするために使用します。
-
自己完結型バンドル ファイル は、レジストリをホストしない場合に直接インストールするための移植可能な
.zipパッケージを提供します。
カスタム拡張ソース名には、1 から 64 文字の小文字の ASCII 文字または数字を含める必要があります。 文字または数字の間にハイフン (-) とアンダースコア (_) を含めることができます。 名前の先頭と末尾は文字または数字にする必要があります。
azd は無効な名前のエラーを返します。それはそれらを正規化しません。
azdとbundleの名前は予約されており、カスタム ソースには使用できません。
構成済みの azd ソースは公式レジストリです。 削除したり、場所を変更したりすることはできません。
開発レジストリにオプトインするには、次のコマンドを実行します。
# Add a new extension source name 'dev' to your `azd` configuration.
azd extension source add -n dev -t url -l "https://aka.ms/azd/extensions/registry/dev"
注意事項
開発レジストリでホストされている拡張機能は署名されておらず、Azure サポートによってカバーされず、予告なしに変更または削除される可能性があります。
拡張機能のソース コマンド
次のコマンドを使用して、 azd インストールの拡張機能ソースを管理します。
インストールされている拡張機能ソースを一覧表示する
azd extension source list
新しい拡張機能ソースを追加する
azd extension source add -n <name> -t url -l <registry-url>
-
-l, --location: 拡張ソースの場所。 -
-n, --name: 拡張ソースの名前。 有効なカスタム ソース名を使用します。 -
-t, --type: 拡張ソースの種類。 サポートされている種類はファイルと URL です。
拡張機能ソースを削除する
azd extension source remove <name>
構成済みの azd ソースを削除することはできません。
アップグレードで、 ~/.azd/config.jsonの古い無効なソース名が原因でソースの読み込みエラーが報告された場合は、 azd extension source removeで問題のあるソースを削除してから、有効な名前でもう一度追加します。
拡張機能の管理
拡張機能を有効にして拡張機能ソースを構成したら、拡張機能をインストールして新しい機能を azdに追加します。 拡張機能の使用例については、「 クイック スタート - AI 拡張機能を使用する」を参照してください。
拡張機能を一覧表示する
azd extension list [flags]
-
--installedインストールされている拡張機能の一覧を表示します。 -
--source指定したソースからの拡張機能のみを一覧表示します。 ソース名は、有効な登録済みソース名である必要があります。 -
--tagsAI やテストなどのタグで拡張機能をフィルター処理します。
拡張機能のインストール
azd extension install <extension-names> [flags]
<extension-name>をインストールする拡張機能の名前に置き換えます。
-
-v, --version拡張機能をインストールするときに適用するバージョン制約を指定します。 -
-s, --sourceインストールに使用する拡張ソースを指定します。 ソース名は、有効な登録済みソース名である必要があります。
拡張機能をアップグレードする
azd extension upgrade <extension-name>
-
--all指定すると、以前にインストールされたすべての拡張機能がアップグレードされます。 -
-v, --version指定されている場合は、バージョン制約を使用して指定された拡張機能をアップグレードします。 -
-s, --sourceインストールに使用する拡張ソースを指定します。 ソース名は、有効な登録済みソース名である必要があります。
拡張機能をアンインストールする
azd extension uninstall <extension-name>
-
--all指定すると、インストールされているすべての拡張機能を削除します。
プロジェクトで必要な拡張機能を宣言する
プロジェクトでは、 azure.yaml で必要な拡張機能を宣言できるため、 azd はプロジェクトで必要な拡張機能バージョンを解決してインストールできます。
requiredVersions.extensionsの下に拡張機能の要件を追加し、latest、正確なバージョン、またはサポートされているセマンティック バージョンの制約を使用します。
requiredVersions:
extensions:
azure.ai.agents: ">=1.0.0"
contoso.azd.tagger: "^2.0.0"
テンプレートが拡張機能提供のサービス ホスト、ライフサイクル ハンドラー、検証プロバイダー、またはコマンドに依存している場合は、プロジェクト レベルの要件を使用します。 スキーマとバージョンの制約の詳細については、 requiredVersionsを参照してください。
拡張機能の統合ポイントについて
拡張機能は、いくつかの方法で azd と統合できます。
- メタデータ、ヘルプ、例を含むコマンド名前空間を追加します。
- プロジェクト ファイルの構成スキーマと IntelliSense メタデータを指定します。
- プロビジョニング、パッケージ、デプロイなどのワークフローのライフサイクル イベント ハンドラーを登録します。
- カスタム プロビジョニング、検証、サービス ターゲット、言語またはフレームワークのサポート用のプロバイダーを追加します。
- エージェントと開発者ツールのモデル コンテキスト プロトコル (MCP) サーバー機能を公開します。
実装ガイダンスについては、「 拡張機能の開発の概念」を参照してください。
開発コンテナーで azd 拡張機能を使用する
azd開発コンテナー機能では、コンテナーのビルド中に、extensions拡張機能のコンマ区切りの一覧を自動的にインストールするazd オプションがサポートされています。 この方法でインストールされた拡張機能は、コンテナーが起動するとすぐに使用でき、手動セットアップが減り、必要な拡張機能が既にインストールされている状態で azd コマンドを実行できるようになります。
拡張機能を自動インストールするには、extensions ファイルのazd機能エントリに devcontainer.json オプションを追加します。
{
"name": "Azure Developer CLI",
"image": "mcr.microsoft.com/devcontainers/python:3.10-bullseye",
"features": {
"ghcr.io/azure/azure-dev/azd:latest": {
"extensions": "my-ext-1,my-ext-2"
}
}
}
extensionsの値はazd拡張名のコンマ区切りリストです。 インストールはコンテナーのビルド中に行われるため、コンテナーが起動するとすぐに拡張機能を使用できるようになります。 拡張機能の一覧を変更した後、Visual Studio Code の [開発コンテナーでリビルドして再度開く ] コマンドを使用して、更新された拡張機能を使用してコンテナーを再構築します。
azd Dev Container 機能の詳細を確認します。