The Azure SDK team is pleased to announce our October 2026 client library releases.

57 packages released this month.

Stable Packages (18)

  • Communication Identity

  • Core - Client - Core

  • Microsoft.Azure.WebPubSub.Common

  • OpenTelemetry Exporter

  • Resource Management - Container Service

  • Resource Management - Napster Omni Agent API

  • Resource Management - Network Cloud

  • Resource Management - Recovery Services Backup

  • Resource Management - Storage

  • Service Bus

  • Storage - Blobs

  • Storage - Blobs Batch

  • Storage - Common

  • Storage - Files Data Lake

  • Storage - Files Share

  • Storage - Queues

  • Tables

  • Web PubSub

Patch Updates (10)

  • Communication Call Automation

  • Functions extension for Blob Storage

  • Functions extension for Storage Queues

  • Key Vault - Administration

  • Key Vault - Certificates

  • Key Vault - Keys

  • Key Vault - Secrets

  • Storage - Blobs

  • Storage - Blobs Batch

  • Storage - Queues

Beta Packages (21)

  • AI Extensions - OpenAI

  • AI Foundry

  • AI Projects - Agents

  • Confidential Ledger

  • Content Safety

  • Key Vault - Administration

  • Key Vault - Certificates

  • Key Vault - Keys

  • Key Vault - Secrets

  • Provisioning - Container Apps

  • Provisioning - Content Delivery Network

  • Provisioning - SQL

  • Resource Management - Azure AI Search

  • Resource Management - Cosmos DB

  • Resource Management - Fabric

  • Resource Management - Network

  • Resource Management - Relay

  • Resource Management - SQL

  • Storage - Blobs ChangeFeed

  • Web PubSub Chat

  • unknown

Release highlights

AI Extensions - OpenAI 3.0.0-beta.3 Changelog

Features Added

  • Added GitHubCopilotToolsetPreview.

AI Foundry 3.0.0-beta.3 Changelog

Features Added

  • Added ProjectsRealtimeClient and ProjectsRealtimeSessionClient to work with voice agents. AIProjectClient.ProjectsRealtimeClient gets a ProjectsRealtimeClient; calling StartSessionAsync(model, intent, options, cancellationToken) on it – the same method used with OpenAI’s own RealtimeClient – connects a ProjectsRealtimeSessionClient to the named voice agent’s realtime endpoint (/agents/{agentName}/endpoint/protocols/voice). Pass store=true/store=false via options.QueryString to control whether the session’s conversation is persisted. ProjectsRealtimeClient is also available when AIProjectClient is constructed from an AIProjectClientSettings whose credential resolves a token provider.

Breaking Changes

  • MaxSamples member was removed from DataGenerationJobOptions.
  • AIProjectClient.GetProjectsRealtimeSessionClient(string, string) and its replacement GetProjectsRealtimeSessionClientAsync(string, string, bool?, CancellationToken) were both removed in favor of AIProjectClient.ProjectsRealtimeClient.StartSessionAsync(string, string, RealtimeSessionClientOptions, CancellationToken), reusing OpenAI’s own RealtimeClient.StartSessionAsync method rather than introducing a separate one.
  • ProjectsRealtimeSessionClient’s public constructor was removed. An instance constructed through it could never become connected (its ConnectAsync override is only reachable through ProjectsRealtimeClient.StartSessionAsync), so it offered no working standalone use; call AIProjectClient.ProjectsRealtimeClient.StartSessionAsync to obtain an already-connected instance instead.

AI Projects - Agents 3.0.0-beta.3 Changelog

Features Added

  • Added the BetaVoiceAgentsTelephony client.
  • Added the BetaVoiceAgentsConversations client.

Communication Call Automation 1.6.1 Changelog

Bugs Fixed

  • Fixed ResultInformation property handling in event parsing and deserialization scenarios to ensure correct initialization and serialization of result codes and messages.

Communication Identity 2.0.0 Changelog

Features Added

  • Added support for the 2026-09-23 stable service API version, which is now the default. Use CommunicationIdentityClientOptions.ServiceVersion.V2026_09_23 to target it explicitly.

Breaking Changes

  • The library is now generated from TypeSpec. The public API surface is unchanged by this, apart from the additions noted below.
  • Removed preview-only API surface that is not modelled in the 2026-09-23 stable API version. All of the following shipped only in 1.4.0-beta.1 and were never part of a stable release:
  • Removed CommunicationIdentityClient.GetUserDetail and GetUserDetailAsync.
  • Removed the Azure.Communication.Identity.Models.CommunicationUserDetail type and the corresponding CommunicationIdentityModelFactory.CommunicationUserDetail factory method.
  • Removed the customId overloads of CreateUser, CreateUserAsync, CreateUserAndToken and CreateUserAndTokenAsync. The overloads without customId are unchanged.
  • Removed ServiceVersion.V2025_03_02_PREVIEW. The previously released stable service API versions V2021_03_07, V2022_06_01, V2022_10_01 and V2023_10_01 remain available and unchanged.

Confidential Ledger 2.0.0-beta.5 Changelog

Features Added

  • Added support for the 2026-07-31-preview service API version, selectable via ConfidentialLedgerClientOptions.ServiceVersion.V2026_07_31_Preview. The default ServiceVersion remains the latest GA version V2026_02_23, so clients that leave the version unspecified are unaffected; preview features such as waitForCommit require explicitly opting in to the preview version.
  • Added a waitForCommit parameter to PostLedgerEntry/PostLedgerEntryAsync. When set to true, the service holds the response until the transaction is globally committed and the returned Operation is already completed, so no additional status polling is required. The operation is only treated as already-completed when the response body confirms "state": "Committed"; against an API version or service build that does not support waitForCommit, the client falls back to normal status polling.

Bugs Fixed

  • Fixed retryable transport exceptions being swallowed for writes and reads that are not eligible for failover, including archived-collection history queries. These operations now preserve the original transport exception instead of throwing “Response was not set, make sure SendAsync was called”.

Content Safety 1.1.0-beta.1 Changelog

Features Added

  • Added UnifiedModerate and UnifiedModerateAsync operations for the 2026-09-01-preview service API.
  • Exposed JsonModelWriteCore for model serialization procedure.
  • Added ContentSafetyClientSettings to support creating a ContentSafetyClient from IConfiguration, including configuration-based credential resolution and dependency injection registration.
  • Added BlocklistClientSettings to support creating a BlocklistClient from IConfiguration, including configuration-based credential resolution and dependency injection registration.

Core - Client - Core 1.63.0 Changelog

Breaking Changes

  • Renamed the experimental ManagedIdentityCredentialOptions.DisableMtlsProofOfPossession property and corresponding configuration setting to EnableMtlsProofOfPossession. mTLS proof-of-possession is enabled by default for direct and configured managed identity when requested and supported. To force bearer authentication, replace DisableMtlsProofOfPossession = true with EnableMtlsProofOfPossession = false in code or credential configuration.

Bugs Fixed

  • Fixed ModelReaderWriter deserialization of GeoPoint with AzureCoreContext or a generated consumer context throwing because its type builder was not registered.
  • Fixed DefaultAzureCredential taking up to a minute to continue past managed identity on hosts where IMDS is unavailable. Ordinary chained requests use the short Azure.Core IMDS probe, while proof-of-possession capability discovery passes the same initial IMDS timeout to MSAL so discovery retry delays are canceled and timed-out discovery results are not cached.
  • Fixed chained managed identity aborting the credential chain when MSAL reports all sources unavailable immediately after a successful initial IMDS probe.
  • Managed identity mTLS proof-of-possession now requires a KeyGuard-backed host capability and enforces KeyGuard as the minimum binding strength during token acquisition. (#62585)

Features Added

  • Added mTLS proof-of-possession support to ClientCertificateCredential, including subject name and issuer certificate authentication configured with SendCertificateChain. Proof-of-possession is used by default when requested; first-party applications can opt out by setting the Azure.Identity.EnableClientCertificateMtlsProofOfPossession AppContext switch (or AZURE_IDENTITY_ENABLE_CLIENT_CERTIFICATE_MTLS_POP environment variable) to false.
  • Added mTLS proof-of-possession support to the managed identity federated identity flow used by configured credentials, covering both managed identity assertion acquisition and client assertion token redemption. It is enabled by default; set EnableMtlsProofOfPossession to false in the credential’s JSON configuration to force bearer authentication for both exchanges. On a host that cannot provide a binding certificate, the flow falls back to a bearer token instead of failing, matching the direct managed identity flow.

Functions extension for Blob Storage 5.3.10 Changelog

Bugs Fixed

  • Fixed a regression from 5.3.8 where a complete (single-page) container scan could skip blobs whose LastModified was after PollingStartTime, then advance the stored scan watermark past those blobs so listing never notified them (#62763).
  • Fixed container scan not starting a new cycle when the listing API returns an empty continuation marker instead of null, which left PollingStartTime stuck and hid blobs uploaded after the first sweep (#61660).

Functions extension for Storage Queues 5.3.10 Changelog

Other Changes

  • This release contains bug fixes to improve quality.

Key Vault - Administration 4.9.0-beta.3 Changelog

Bugs Fixed

  • Fixed intermittent authentication failures by retrying requests rejected because the mTLS Proof-of-Possession certificate did not match the token binding.
  • Fixed a NullReferenceException in the challenge-based authentication policy that could occur when a Continuous Access Evaluation (CAE) claims challenge was received for an authority that had not yet been cached.
  • Fixed an issue in the challenge-based authentication policy where a cached authentication challenge, and the access token acquired for it, could be reused for a request to a different Key Vault or Managed HSM endpoint. The policy now resolves the challenge per request endpoint, ensuring a token acquired for one vault is never attached to a request to another.

Features Added

  • Added IDisposable to KeyVaultAccessControlClient, KeyVaultBackupClient, KeyVaultEkmClient, and KeyVaultSettingsClient to release internally owned HTTP pipelines and transports. Reuse clients and dispose them after all operations and polling have completed; caller-provided transports are not disposed.
  • Added a narrowly scoped bearer-token fallback for attested managed-identity tenant eligibility denials, with the decision remembered by the Key Vault client for subsequent token acquisitions.
  • Added support for Proof-of-Possession (PoP) token binding in the Key Vault authentication policy.

Key Vault - Administration 4.9.0-beta.4 Changelog

Features Added

  • Added External Key Manager (EKM) proxy private endpoint support to KeyVaultEkmClient, including CreateEkmPrivateEndpoint, GetEkmPrivateEndpoint, GetEkmPrivateEndpoints, DeleteEkmPrivateEndpoint, and GetEkmPrivateEndpointOperationStatus operations.
  • Added KeyVaultEkmConnectivityMode to KeyVaultEkmConnection to route an EKM connection through an EKM proxy private endpoint.

Key Vault - Administration 4.8.2 Changelog

Bugs Fixed

  • Fixed handling of claims challenges when the authentication challenge cache is empty or cleared while a request is in flight.
  • Fixed an issue in the challenge-based authentication policy where a cached authentication challenge accepted with challenge resource verification disabled could be reused by a separate default-strict client without revalidating the challenge resource.
  • Improved authentication challenge resource validation.

Key Vault - Certificates 4.10.0-beta.3 Changelog

Bugs Fixed

  • Fixed intermittent authentication failures by retrying requests rejected because the mTLS Proof-of-Possession certificate did not match the token binding.
  • Fixed a NullReferenceException in the challenge-based authentication policy that could occur when a Continuous Access Evaluation (CAE) claims challenge was received for an authority that had not yet been cached.
  • Fixed an issue in the challenge-based authentication policy where a cached authentication challenge, and the access token acquired for it, could be reused for a request to a different Key Vault or Managed HSM endpoint. The policy now resolves the challenge per request endpoint, ensuring a token acquired for one vault is never attached to a request to another.

Features Added

  • Added IDisposable to CertificateClient to release its internally owned HTTP pipeline and transport. Reuse clients and dispose them after all operations have completed; caller-provided transports are not disposed.
  • Added a narrowly scoped bearer-token fallback for attested managed-identity tenant eligibility denials, with the decision remembered by the Key Vault client for subsequent token acquisitions.
  • Added support for Proof-of-Possession (PoP) token binding in the Key Vault authentication policy.

Key Vault - Certificates 4.9.2 Changelog

Bugs Fixed

  • Fixed handling of claims challenges when the authentication challenge cache is empty or cleared while a request is in flight.
  • Fixed an issue in the challenge-based authentication policy where a cached authentication challenge accepted with challenge resource verification disabled could be reused by a separate default-strict client without revalidating the challenge resource.
  • Improved authentication challenge resource validation.

Key Vault - Keys 4.11.0-beta.4 Changelog

Features Added

  • Added IDisposable to KeyClient, CryptographyClient, and KeyResolver to release internally owned HTTP pipelines and transports. Cryptography clients returned by a key client or resolver borrow its pipeline and do not dispose it; keep the parent alive until all use of those clients has completed. Caller-provided transports are not disposed.
  • Added a narrowly scoped bearer-token fallback for attested managed-identity tenant eligibility denials, with the decision remembered by the Key Vault client for subsequent token acquisitions.
  • Added support for Proof-of-Possession (PoP) token binding in the Key Vault authentication policy.

Bugs Fixed

  • Fixed intermittent authentication failures by retrying requests rejected because the mTLS Proof-of-Possession certificate did not match the token binding.
  • Fixed a NullReferenceException in the challenge-based authentication policy that could occur when a Continuous Access Evaluation (CAE) claims challenge was received for an authority that had not yet been cached.
  • Fixed an issue in the challenge-based authentication policy where a cached authentication challenge, and the access token acquired for it, could be reused for a request to a different Key Vault or Managed HSM endpoint. The policy now resolves the challenge per request endpoint, ensuring a token acquired for one vault is never attached to a request to another.

Key Vault - Keys 4.10.2 Changelog

Bugs Fixed

  • Fixed handling of claims challenges when the authentication challenge cache is empty or cleared while a request is in flight.
  • Fixed an issue in the challenge-based authentication policy where a cached authentication challenge accepted with challenge resource verification disabled could be reused by a separate default-strict client without revalidating the challenge resource.
  • Improved authentication challenge resource validation.

Key Vault - Keys 4.11.0-beta.5 Changelog

Features Added

  • Added support for Algorithm Key Pair (AKP) keys, such as ML-DSA post-quantum keys:
  • Added the KeyType.Akp and KeyType.AkpHsm key types.
  • Added the AkpAlgorithm type listing the supported AKP algorithms.
  • Added the CreateAkpKeyOptions model and the new CreateAkpKey and CreateAkpKeyAsync methods in KeyClient.
  • Added the Algorithm and Pub properties to JsonWebKey.

Key Vault - Secrets 4.12.0-beta.2 Changelog

Bugs Fixed

  • Fixed intermittent authentication failures by retrying requests rejected because the mTLS Proof-of-Possession certificate did not match the token binding.
  • Fixed a NullReferenceException in the challenge-based authentication policy that could occur when a Continuous Access Evaluation (CAE) claims challenge was received for an authority that had not yet been cached.
  • Fixed an issue in the challenge-based authentication policy where a cached authentication challenge, and the access token acquired for it, could be reused for a request to a different Key Vault or Managed HSM endpoint. The policy now resolves the challenge per request endpoint, ensuring a token acquired for one vault is never attached to a request to another.

Features Added

  • Added IDisposable to SecretClient to release its internally owned HTTP pipeline and transport. Reuse clients and dispose them after all operations have completed; caller-provided transports are not disposed.
  • Added a narrowly scoped bearer-token fallback for attested managed-identity tenant eligibility denials, with the decision remembered by the Key Vault client for subsequent token acquisitions.
  • Added support for Proof-of-Possession (PoP) token binding in the Key Vault authentication policy.

Key Vault - Secrets 4.11.2 Changelog

Bugs Fixed

  • Fixed handling of claims challenges when the authentication challenge cache is empty or cleared while a request is in flight.
  • Fixed an issue in the challenge-based authentication policy where a cached authentication challenge accepted with challenge resource verification disabled could be reused by a separate default-strict client without revalidating the challenge resource.
  • Improved authentication challenge resource validation.

Microsoft.Azure.WebPubSub.Common 1.6.0 Changelog

Features Added

  • Add support for handling group presence events.

OpenTelemetry Exporter 1.10.0 Changelog

Bugs Fixed

  • SDK statistics sent to the Microsoft OpenTelemetry distro’s configured ingestion endpoint (the Azure.Monitor.OpenTelemetry.Exporter.RouteSdkStatsToDistroEndpoint AppContext switch) now carry the same region-matched SDK statistics instrumentation key as the existing SDK statistics endpoint, instead of an all-zero placeholder. Only the destination differs on the distro path. (#63342)

Features Added

  • Added the Azure.Monitor.OpenTelemetry.Exporter.StorageSubDirectory AppContext value, settable with AppContext.SetData or a runtimeconfig.json configProperty, so that the processes or entry points of one application can share a persistent storage directory. By default the directory name is derived from the process name and AppContext.BaseDirectory, which splits storage when components of one application differ in either, and a component that runs rarely never drains its backlog. When set, the value replaces those two inputs; the instrumentation key and user name still contribute, so different users and resources stay isolated. Behaviour is unchanged when the value is not set. (#62997)

Provisioning - Container Apps 1.3.0-beta.2 Changelog

Provisioning - Content Delivery Network 1.0.0-beta.4 Changelog

Provisioning - SQL 1.2.0-beta.3 Changelog

Resource Management - Azure AI Search 1.4.0-beta.3 Changelog

Resource Management - Container Service 1.8.0 Changelog

Resource Management - Cosmos DB 1.6.0-beta.1 Changelog

Resource Management - Fabric 1.1.0-beta.4 Changelog

Resource Management - Napster Omni Agent API 1.0.0 Changelog

Resource Management - Network 1.18.0-beta.1 Changelog

Resource Management - Network 1.18.0-alpha.20260920.2 Changelog

Resource Management - Network Cloud 1.4.0 Changelog

Resource Management - Recovery Services Backup 1.5.0 Changelog

Resource Management - Relay 1.4.0-beta.2 Changelog

Resource Management - SQL 1.5.0-beta.1 Changelog

Resource Management - Storage 1.8.0 Changelog

Service Bus 7.21.0 Changelog

Features Added

  • Added SqlFilterCount and CorrelationFilterCount properties to TopicRuntimeProperties, exposing the total number of SQL filters and correlation filters across all of a topic’s subscriptions. These are populated by GetTopicRuntimePropertiesAsync and GetTopicsRuntimePropertiesAsync.
  • Added ServiceBusAdministrationClientOptions.ServiceVersion.V2024_05 and made it the default service version. The topic filter counts above are served by the 2024-05 service API version, so the administration client now sends api-version=2024-05 by default.
  • Added GetMessageSessionsAsync overloads on ServiceBusClient for queues and subscriptions. The no-filter overload returns the IDs of sessions that have active messages or session state, and the sessionStateUpdatedAfter overload returns session IDs whose session state was updated after the specified timestamp. Implements the com.microsoft:get-message-sessions AMQP management operation. (#58761)
  • Added opt-in support for non-exclusive session locking on ServiceBusSessionReceiver, allowing a session to be cooperatively taken over by another receiver. Set ServiceBusSessionReceiverOptions.EnableNonExclusiveSession to accept a session non-exclusively, then read the token from ServiceBusSessionReceiver.SessionLockToken and pass it as ServiceBusSessionReceiverOptions.SessionLockToken = Guid.Parse(token) to take that session over. ServiceBusSessionReceiver.IsSessionExclusive reports the mode the session was established under. Dispositions for a non-exclusive session are routed over the management link so that settlement keeps working across a takeover, which lowers settlement throughput compared to an exclusive session. This applies to ServiceBusSessionReceiver only; ServiceBusSessionProcessor continues to lock sessions exclusively. Accepting a session with EnableNonExclusiveSession set throws NotSupportedException when the endpoint declines it, either by refusing the request outright or by accepting it without assigning a lock token, which is how a caller detects whether the feature is available for a namespace. An endpoint that declines in some other way surfaces the exception its own error maps to. (#60060)

Bugs Fixed

  • Fixed retry classification for web socket failures with nested causes. On modern .NET, a transient network failure during a web socket connection attempt surfaces as a WebSocketException that wraps an HttpRequestException, which wraps the meaningful IOException or SocketException. The retry policy previously inspected only one level of nesting and treated these failures as terminal. The policy now unwraps nested wrapper exceptions to a bounded depth, so transient failures such as a connection reset use the configured retries. Terminal socket failures, such as host-not-found and host-unreachable, are not retried at any supported depth. A host-unreachable failure on an established connection is now terminal. Earlier versions retried it. (#61868)

  • Fixed a bug where canceling ServiceBusReceiver.CloseAsync left the receiver unable to close its own links. The receiver was marked as closed, and its set of locked messages disposed, before the cancellation was observed, so every later call to CloseAsync returned immediately without doing any work and the links stayed open until the owning ServiceBusClient was disposed. The receiver is now left open and closable when a close does not complete, so the operation can be retried. (#59309)

Storage - Blobs 12.30.0 Changelog

Features Added

  • Includes all features from 12.30.0-beta.1 and 12.30.0-beta.2.

Storage - Blobs 12.30.1 Changelog

Bugs Fixed

  • Fixed AuthenticatedRegionCryptoStream.Dispose() to be idempotent and thread-safe, so the buffer it rents is no longer returned to the shared ArrayPool<byte> more than once when the stream is disposed repeatedly or concurrently. Returning the same array twice allowed unrelated callers to rent the same array instance and corrupt each other’s data.

Storage - Blobs Batch 12.27.0 Changelog

Features Added

  • Includes all features from 12.27.0-beta.1 and 12.27.0-beta.2.

Storage - Blobs Batch 12.27.1 Changelog

Other Changes

  • Upgraded Azure.Storage.Blobs package dependency to 12.30.1

Storage - Blobs ChangeFeed 12.0.0-preview.65 Changelog

Features Added

  • This release contains bug fixes to improve quality.

Storage - Blobs ChangeFeed 12.0.0-preview.66 Changelog

Other Changes

  • Upgraded Azure.Storage.Blobs package dependency to 12.30.1

Storage - Common 12.29.0 Changelog

Features Added

  • Includes all features from 12.29.0-beta.1

Storage - Files Data Lake 12.28.0 Changelog

Features Added

  • Includes all features from 12.28.0-beta.1

Storage - Files Share 12.28.0 Changelog

Features Added

  • Includes all features from 12.28.0-beta.1

Storage - Queues 12.28.0 Changelog

Features Added

  • Includes all features from 12.28.0-beta.1

Storage - Queues 12.28.1 Changelog

Bugs Fixed

  • Fixed AuthenticatedRegionCryptoStream.Dispose() to be idempotent and thread-safe, so the buffer it rents is no longer returned to the shared ArrayPool<byte> more than once when the stream is disposed repeatedly or concurrently. Returning the same array twice allowed unrelated callers to rent the same array instance and corrupt each other’s data.

Tables 12.13.0 Changelog

Bugs Fixed

  • Fixed an issue where combined [Flags] enum values written as comma-separated names were skipped during strongly typed table entity deserialization, while continuing to reject comma-separated values for non-[Flags] enums. (#62508)

Web PubSub 1.7.0 Changelog

Bugs Fixed

  • Fixed synchronous client access URI generation with Microsoft Entra ID authentication to include the requested initial groups.

Web PubSub Chat 1.0.0-beta.1 Changelog

Features Added

  • Initial beta release of the Azure Web PubSub Chat client library for .NET.
  • Added WebPubSubChatServiceClient with support for connection string, AzureKeyCredential, and Microsoft Entra ID (TokenCredential) authentication.
  • Added management of chat rooms, room members, users, and roles.
  • Added reading of message history from a conversation, and updating and deleting messages.
  • Added GetClientAccessUri to generate a client access URI for connecting to the service.
  • Added generated extensible chat permissions (ChatPermission) and built-in roles (BuiltInChatRoles).

unknown 1.0.0-beta.1 Changelog

unknown 1.0.0-beta.1 Changelog

Bugs Fixed

  • Fixed InferenceClient(InferenceClientSettings) so that API-key settings authenticate with the Ocp-Apim-Subscription-Key header instead of throwing ArgumentNullException. This also unblocks API-key authentication through AddInferenceClient and AddKeyedInferenceClient.

Features Added

  • Added the provisional TypeSpec-generated InferenceClient for Semantic Reranker operations.
  • Added API-key authentication for the Ocp-Apim-Subscription-Key header.
  • Added Microsoft Entra authentication using the https://dbinference.azure.com/.default scope.
  • Added per-sentence relevance scores through SemanticRerankingScore.SentenceScores, opted into with SemanticRerankingInferenceContent.ReturnSentenceScore.
  • Added result ordering control through SemanticRerankingInferenceContent.Sort.
  • Added the InferenceModelFactory mocking factory.

unknown 1.0.0-beta.1 Changelog

Features Added

Consolidated configuration types ahead of public preview. The package now has a single canonical mutable options type that binds idiomatically via Microsoft.Extensions.Configuration, and the loader returns it directly (no result wrapper).

  • OptimizationConfig → OptimizationOptions (mutable class, { get; set; } properties).
  • OptimizationConfigLoader → OptimizationOptionsLoader.
  • Loader API collapsed from four overloads to two:
  • OptimizationOptionsLoader.Load(LoadOptions? = null) → OptimizationOptions?
  • OptimizationOptionsLoader.LoadAsync(LoadOptions? = null, CancellationToken = default) → Task<OptimizationOptions?>
  • The previous AuthenticationTokenProvider-only overloads are gone — pass the provider via LoadOptions.TokenProvider.
  • Removed LoadResult wrapper. LoadResult.SourceUsed duplicated OptimizationOptions.Source, and LoadResult.Warnings is now surfaced as stderr diagnostics only.
  • LoadConfigOptions → LoadOptions.
  • OptimizationSkill is now a mutable class (was a readonly struct). Reference equality only.
  • ToolDefinition is now a mutable class with { get; set; } properties.
  • Skills and ToolDefinitions collections are typed IList<> (mutable) instead of IReadOnlyList<>.
  • Removed the OptimizationOptions.FromOptimizationConfig / ToOptimizationConfig shim — there is now only one type.
  • Multi-targeting: ships net8.0 and net10.0 assemblies, matching the sibling Core SDK.
  • Priority-3 resolution: OptimizationOptionsLoader now loads candidate configs from OPTIMIZATION_LOCAL_DIR/<OPTIMIZATION_CANDIDATE_ID>/ on disk, populated by azd ai agent optimize apply --candidate.
  • Initial release of Azure.AI.AgentServer.Optimization.
  • OptimizationConfigLoader.LoadConfig() and LoadConfigAsync() — resolves optimized agent configurations from the resolver API or environment variable.
  • OptimizationConfig — immutable config object with instructions, model, temperature, skills, and tool definitions.
  • OptimizationSkill — represents a single learned skill with name, description, and body.

unknown 1.0.0-beta.1 Changelog

unknown 1.0.0-beta.1 Changelog

Latest Releases

View all the latest versions of .NET packages here.

Installation Instructions

To install any of our packages, please search for them via Manage NuGet Packages... in Visual Studio (with Include prerelease checked) or copy these commands into your terminal:

$> dotnet add package Azure.AI.AgentServer.Optimization --version 1.0.0-beta.1
$> dotnet add package Azure.AI.ContentSafety --version 1.1.0-beta.1
$> dotnet add package Azure.AI.Extensions.OpenAI --version 3.0.0-beta.3
$> dotnet add package Azure.AI.Projects --version 3.0.0-beta.3
$> dotnet add package Azure.AI.Projects.Agents --version 3.0.0-beta.3
$> dotnet add package Azure.Communication.CallAutomation --version 1.6.1
$> dotnet add package Azure.Communication.Identity --version 2.0.0
$> dotnet add package Azure.Core --version 1.63.0
$> dotnet add package Azure.Data.AI --version 1.0.0-beta.1
$> dotnet add package Azure.Data.Tables --version 12.13.0
$> dotnet add package Azure.Messaging.ServiceBus --version 7.21.0
$> dotnet add package Azure.Messaging.WebPubSub --version 1.7.0
$> dotnet add package Azure.Messaging.WebPubSub.Chat --version 1.0.0-beta.1
$> dotnet add package Azure.Monitor.OpenTelemetry.Exporter --version 1.10.0
$> dotnet add package Azure.Provisioning.AppContainers --version 1.3.0-beta.2
$> dotnet add package Azure.Provisioning.Cdn --version 1.0.0-beta.4
$> dotnet add package Azure.Provisioning.Databricks --version 1.0.0-beta.1
$> dotnet add package Azure.Provisioning.Fabric --version 1.0.0-beta.1
$> dotnet add package Azure.Provisioning.Sql --version 1.2.0-beta.3
$> dotnet add package Azure.Provisioning.VerifiedId --version 1.0.0-beta.1
$> dotnet add package Azure.ResourceManager.ContainerService --version 1.8.0
$> dotnet add package Azure.ResourceManager.CosmosDB --version 1.6.0-beta.1
$> dotnet add package Azure.ResourceManager.Fabric --version 1.1.0-beta.4
$> dotnet add package Azure.ResourceManager.NapsterOmniagentApi --version 1.0.0
$> dotnet add package Azure.ResourceManager.Network --version 1.18.0-beta.1
$> dotnet add package Azure.ResourceManager.Network --version 1.18.0-alpha.20260920.2
$> dotnet add package Azure.ResourceManager.NetworkCloud --version 1.4.0
$> dotnet add package Azure.ResourceManager.RecoveryServicesBackup --version 1.5.0
$> dotnet add package Azure.ResourceManager.Relay --version 1.4.0-beta.2
$> dotnet add package Azure.ResourceManager.Search --version 1.4.0-beta.3
$> dotnet add package Azure.ResourceManager.Sql --version 1.5.0-beta.1
$> dotnet add package Azure.ResourceManager.Storage --version 1.8.0
$> dotnet add package Azure.Security.ConfidentialLedger --version 2.0.0-beta.5
$> dotnet add package Azure.Security.KeyVault.Administration --version 4.9.0-beta.3
$> dotnet add package Azure.Security.KeyVault.Administration --version 4.9.0-beta.4
$> dotnet add package Azure.Security.KeyVault.Administration --version 4.8.2
$> dotnet add package Azure.Security.KeyVault.Certificates --version 4.10.0-beta.3
$> dotnet add package Azure.Security.KeyVault.Certificates --version 4.9.2
$> dotnet add package Azure.Security.KeyVault.Keys --version 4.11.0-beta.4
$> dotnet add package Azure.Security.KeyVault.Keys --version 4.10.2
$> dotnet add package Azure.Security.KeyVault.Keys --version 4.11.0-beta.5
$> dotnet add package Azure.Security.KeyVault.Secrets --version 4.12.0-beta.2
$> dotnet add package Azure.Security.KeyVault.Secrets --version 4.11.2
$> dotnet add package Azure.Storage.Blobs --version 12.30.0
$> dotnet add package Azure.Storage.Blobs --version 12.30.1
$> dotnet add package Azure.Storage.Blobs.Batch --version 12.27.0
$> dotnet add package Azure.Storage.Blobs.Batch --version 12.27.1
$> dotnet add package Azure.Storage.Blobs.ChangeFeed --version 12.0.0-preview.65
$> dotnet add package Azure.Storage.Blobs.ChangeFeed --version 12.0.0-preview.66
$> dotnet add package Azure.Storage.Common --version 12.29.0
$> dotnet add package Azure.Storage.Files.DataLake --version 12.28.0
$> dotnet add package Azure.Storage.Files.Shares --version 12.28.0
$> dotnet add package Azure.Storage.Queues --version 12.28.0
$> dotnet add package Azure.Storage.Queues --version 12.28.1
$> dotnet add package Microsoft.Azure.WebJobs.Extensions.Storage.Blobs --version 5.3.10
$> dotnet add package Microsoft.Azure.WebJobs.Extensions.Storage.Queues --version 5.3.10
$> dotnet add package Microsoft.Azure.WebPubSub.Common --version 1.6.0

Feedback

If you have a bug or feature request for one of the libraries, please file an issue in our repo.