Skip to content

Custom model extension#6763

Merged
achauhan-scc merged 58 commits intoAzure:mainfrom
achauhan-scc:main
Feb 18, 2026
Merged

Custom model extension#6763
achauhan-scc merged 58 commits intoAzure:mainfrom
achauhan-scc:main

Conversation

@achauhan-scc
Copy link
Member

This pull request introduces the initial implementation of the azure.ai.models extension for the Azure Developer CLI (azd). It adds the core extension configuration, build and test scripts for multiple platforms, Go module dependencies, documentation, and utility code for managing dependencies like AzCopy. The changes lay the foundation for building, testing, and distributing the extension, as well as providing users with clear installation and usage instructions.

Key changes:

Extension Configuration and Documentation

  • Added the main extension manifest extension.yaml with metadata, capabilities, and usage examples for managing custom models in Azure AI Foundry.
  • Added a comprehensive installation and usage guide in docs/installation-guide.md, including step-by-step instructions and screenshots for installing, initializing, and using the extension.

Build and Test Infrastructure

  • Introduced cross-platform build scripts: build.sh (Bash) and build.ps1 (PowerShell), supporting multi-OS/architecture builds, version stamping, and output directory management. [1] [2]
  • Added a CI-specific PowerShell build script ci-build.ps1 with support for code coverage, build modes, and advanced Go build flags.
  • Added a PowerShell test script ci-test.ps1 that uses gotestsum if available for improved test output, or falls back to go test.

Go Module and Dependencies

  • Created the initial go.mod with all required direct and indirect dependencies for Azure SDK, CLI integration, and supporting libraries.

Supporting Utilities

  • Implemented internal/azcopy/installer.go, a utility for downloading and installing the AzCopy binary in a cross-platform manner, handling archive extraction and installation paths.
  • Added a cspell.yaml file with custom dictionary entries to improve spell checking for domain-specific terms.

Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Introduces the initial azure.ai.models extension for azd, providing core CLI commands (init + custom model lifecycle), an HTTP client to call Foundry project APIs, and cross-platform build/CI scripts and documentation.

Changes:

  • Added Go-based extension entrypoint, command tree, and Foundry HTTP client for custom model create/list/show/delete flows.
  • Added AzCopy discovery + auto-install + upload progress handling for large model uploads.
  • Added extension manifest, versioning, build/CI scripts, and end-user installation/usage documentation.

Reviewed changes

Copilot reviewed 27 out of 35 changed files in this pull request and generated 11 comments.

Show a summary per file
File Description
cli/azd/extensions/azure.ai.models/version.txt Adds extension version stamp.
cli/azd/extensions/azure.ai.models/pkg/models/register_model.go Adds request type for model registration API.
cli/azd/extensions/azure.ai.models/pkg/models/pending_upload.go Adds types for pending upload API response (SAS + blob info).
cli/azd/extensions/azure.ai.models/pkg/models/custom_model.go Adds model types + table view helper for list output.
cli/azd/extensions/azure.ai.models/main.go Adds extension executable entrypoint + FORCE_COLOR handling.
cli/azd/extensions/azure.ai.models/internal/utils/output.go Adds table/JSON output helper used by commands.
cli/azd/extensions/azure.ai.models/internal/cmd/version.go Adds version subcommand with build-time stamps.
cli/azd/extensions/azure.ai.models/internal/cmd/root.go Adds root command + persistent flags + subcommand wiring.
cli/azd/extensions/azure.ai.models/internal/cmd/metadata.go Adds hidden metadata generator for azd extension system.
cli/azd/extensions/azure.ai.models/internal/cmd/init.go Adds init flow to create/select env and store Foundry connection settings.
cli/azd/extensions/azure.ai.models/internal/cmd/custom_show.go Adds custom show command to display model details.
cli/azd/extensions/azure.ai.models/internal/cmd/custom_list.go Adds custom list command with table/JSON output.
cli/azd/extensions/azure.ai.models/internal/cmd/custom_delete.go Adds custom delete command with confirmation and --force.
cli/azd/extensions/azure.ai.models/internal/cmd/custom_create.go Adds custom create command (pending upload → azcopy upload → register).
cli/azd/extensions/azure.ai.models/internal/cmd/custom.go Adds custom command group + endpoint resolution (flag/env/prompt).
cli/azd/extensions/azure.ai.models/internal/client/foundry_client.go Adds REST client for Foundry project model endpoints.
cli/azd/extensions/azure.ai.models/internal/azcopy/runner.go Adds azcopy discovery/exec + NDJSON progress parsing.
cli/azd/extensions/azure.ai.models/internal/azcopy/installer.go Adds azcopy download + archive extraction installer.
cli/azd/extensions/azure.ai.models/go.sum Adds Go dependency lockfile for the new module.
cli/azd/extensions/azure.ai.models/go.mod Adds Go module definition + dependencies.
cli/azd/extensions/azure.ai.models/extension.yaml Adds azd extension manifest metadata and examples.
cli/azd/extensions/azure.ai.models/docs/installation-guide.md Adds end-user installation and usage guide with screenshots.
cli/azd/extensions/azure.ai.models/design/design-spec.md Adds design spec describing scope, UX, and API details.
cli/azd/extensions/azure.ai.models/cspell.yaml Adds domain dictionary for spell checker.
cli/azd/extensions/azure.ai.models/ci-test.ps1 Adds CI test runner (gotestsum optional).
cli/azd/extensions/azure.ai.models/ci-build.ps1 Adds CI build script (flags, stamping, optional record build).
cli/azd/extensions/azure.ai.models/build.sh Adds cross-platform build script for multiple GOOS/GOARCH outputs.
cli/azd/extensions/azure.ai.models/build.ps1 Adds PowerShell build script for multiple GOOS/GOARCH outputs.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Copilot reviewed 27 out of 35 changed files in this pull request and generated 6 comments.


💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Copilot reviewed 28 out of 35 changed files in this pull request and generated 8 comments.


💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Copilot reviewed 30 out of 37 changed files in this pull request and generated 1 comment.


💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

@achauhan-scc achauhan-scc enabled auto-merge (squash) February 18, 2026 16:56
@achauhan-scc achauhan-scc merged commit bd28c64 into Azure:main Feb 18, 2026
7 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

6 participants