Jacob Alber and GitHub
331c750515
.NET: [BREAKING] Enable sharing of workflow instances across concurrently executing runs ( #1464 )
...
* refactor: remove unused internals
* feat: Execution Mode for sharing a workflow among concurrent runs
* feat: Update WorkflowHostAgent to support concurrent execution
* Also update AsAgent APIs to support injecting a CheckpointManager and an IWorkflowExecutionEnvironment
* fix: Make Read logic consistent in DeclarativeWorkflowContext
2025-10-15 21:34:17 +00:00
Jacob Alber and GitHub
69e1ab0409
fix: Update WorkflowHostAgent post Checkpointing implementation ( #1498 )
...
WorkflowHostAgent was initially implemented before Checkpointing was available. This meant that in order to support resuming, the WorkflowHostAgent needed to keep the runs around, which broke it when stricter rules about concurrent sharing of workflows during execution were introduced.
This change updates the hosting logic to release the underlying StreamingRun when the RunStreamingAsync or RunAsync are invoked, in favour of keeping the checkpointing information in the WorkflowThread to enable resumption.
2025-10-15 18:18:28 +00:00
5333cce63c
.NET: Remove Semantic Kernel Migration instructions (moved already to SK Repository) ( #1485 )
...
* Moved SK->AF migrations
* Update dotnet/samples/SemanticKernelMigration/README.md
Co-authored-by: westey <164392973+westey-m@users.noreply.github.com >
* Removing extra jump for migration
---------
Co-authored-by: westey <164392973+westey-m@users.noreply.github.com >
2025-10-15 16:13:11 +00:00
Mark Wallace and GitHub
d7094d5432
.NET: ChatClientBuilderExtensions should be in the M.E.AI namespace ( #1484 )
...
* ChatClientBuilderExtensions should be in the M.E.AI namespace
* ChatClientBuilderExtensions should be in the M.E.AI namespace
2025-10-15 14:58:41 +00:00
ab450078ab
Update to M.E.AI 9.10 ( #1461 )
...
And other System.*/Microsoft.Extensions.* updated today
Co-authored-by: SergeyMenshykh <68852919+SergeyMenshykh@users.noreply.github.com >
2025-10-15 08:33:33 +00:00
Chris and GitHub
8e8dfb3948
Better ( #1463 )
2025-10-14 21:17:18 +00:00
Chris and GitHub
a6b6937b94
.NET Workflows - Support agent level function invocation for declarative workflow ( #1442 )
...
* Checkpoint
* Checkpoint
* Checkpoint
* Good
* Namespace
* Namespace
* Dun
* Async Test
* AgentId
* Portable pattern
* Portable2
* Portable3
* Respond to comments
* Namespace
* Function call selection
* ToHashSet
* ToHashSet
* Updated
* Parameter name
* Final
* Tests
2025-10-14 20:42:15 +00:00
a4039134de
.NET: Remove reflection samples ( #1460 )
...
* Removing usage of ReflectingExecutor<T> from workflow samples.
* Removing uneeded changes.
* Clean up.
* Update dotnet/samples/GettingStarted/Workflows/_Foundational/01_ExecutorsAndEdges/Program.cs
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
* Update dotnet/samples/GettingStarted/Workflows/_Foundational/01_ExecutorsAndEdges/Program.cs
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
* Update dotnet/samples/GettingStarted/Workflows/_Foundational/02_Streaming/Program.cs
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
* Update dotnet/samples/GettingStarted/Workflows/_Foundational/02_Streaming/Program.cs
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
* Updates per PR feedback.
* Undo changes to generated file.
---------
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
2025-10-14 20:34:04 +00:00
38e10eab81
Bump Azure.AI.Agents.Persistent from 1.2.0-beta.5 to 1.2.0-beta.6 ( #1409 )
...
---
updated-dependencies:
- dependency-name: Azure.AI.Agents.Persistent
dependency-version: 1.2.0-beta.6
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-10-14 20:27:11 +00:00
0331331dbc
.NET [WIP]: introduce Hosting extensions for Workflows ( #1359 )
...
* skeleton
* wip
* rename + fix tests
* implement workflow tests
* fix comments
* Update dotnet/src/Microsoft.Agents.AI.Hosting/HostApplicationBuilderWorkflowExtensions.cs
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
* fixes
* fix worfklow build logic
* rollback + new overload on workflow builder
* address PR comments
* :)
---------
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
2025-10-14 19:44:58 +00:00
Korolev Dmitry and GitHub
f42a3ee6b9
.NET: Enable access to hosted AIAgents via OpenAI Chat Completions ( #1302 )
...
* non-streaming chat completion
* support streaming
* simplify frontend clients + nit
* nit
* use baseaddress
* rm unnecessary
* refactor
* remove conversation id for chatcompletions agent client
* nits
2025-10-14 18:38:02 +00:00
1f0faff623
.NET: Add sample showing how to create ai function per a2a skill ( #1452 )
...
* add sample showing how to create ai function per a2a skill
* Update dotnet/src/Microsoft.Agents.AI.A2A/Extensions/A2AAgentCardExtensions.cs
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
* Update dotnet/samples/GettingStarted/A2A/A2AAgent_AsFunctionTools/Program.cs
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
* Update dotnet/samples/GettingStarted/A2A/A2AAgent_AsFunctionTools/Program.cs
Co-authored-by: Roger Barreto <19890735+rogerbarreto@users.noreply.github.com >
* address pr review comments
* rename local function
* add readmes
* fix broken links
---------
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
Co-authored-by: Roger Barreto <19890735+rogerbarreto@users.noreply.github.com >
2025-10-14 17:57:19 +00:00
64b57639b8
.NET: Mitigation for issue 1315 ( #1432 )
...
* Adding mitigation for issue 1315, will follow up with long-term plan.
* Apply suggestion from @lokitoth
Co-authored-by: Jacob Alber <jaalber@microsoft.com >
* Apply suggestion from @Copilot
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
* Extracting common updates to a helper method.
* Fixing spelling mistake.
* Update per PR feedback.
---------
Co-authored-by: Jacob Alber <jaalber@microsoft.com >
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
2025-10-13 18:06:58 +00:00
Korolev Dmitry and GitHub
7e8a3fa0e5
.NET: support .NET8 for hosting projects ( #1426 )
...
* support net8.0 for hosting projects
* enable CI to run on net8
* correctly setup tfms
* correct fixes (avoid net8)
* nit
* fix hosting.a2a.tests tfm
* update TFM for hosting.unitTests
* remove .net8 CI target
* revert hosting.tests
2025-10-13 13:05:49 +00:00
Chris and GitHub
5fa153642e
.NET Workflows - Update State Serialization for JSON Checkpointing ( #1388 )
...
* Checkpoint
* Checkpoint
* Namespace
* All ready
* Namespace
* Clean
* Fix
2025-10-10 20:10:17 +00:00
westey and GitHub
d6fdb91480
.NET: Inline const values in samples where used only once ( #1387 )
...
* Inline const values in samples where used only once
* Fix some spacing issues and use consistent ordering of settings/params
2025-10-10 16:50:53 +00:00
3730db3e94
.NET: Sanitize agent name ( #1368 )
...
* sanitize agent name
* simplify
* Update dotnet/src/Microsoft.Agents.AI/AgentExtensions.cs
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
* Update dotnet/src/Microsoft.Agents.AI/AgentExtensions.cs
Co-authored-by: Stephen Toub <stoub@microsoft.com >
* Update dotnet/src/Microsoft.Agents.AI/AgentExtensions.cs
Co-authored-by: Stephen Toub <stoub@microsoft.com >
* Update dotnet/tests/Microsoft.Agents.AI.UnitTests/AgentExtensionsTests.cs
Co-authored-by: Stephen Toub <stoub@microsoft.com >
* change regex to flag underscores as well so their sequence can be replaced with a single one.
---------
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
Co-authored-by: Stephen Toub <stoub@microsoft.com >
2025-10-10 16:49:56 +00:00
Dmytro Struk and GitHub
00a124dae6
Added git tag property ( #1386 )
2025-10-10 15:37:14 +00:00
Chris and GitHub
7e1fd67e76
.NET Workflows - Capture the identifier of the LastMessage (the workflow input) ( #1372 )
...
* Fixed
* Test fix
2025-10-10 06:45:09 +00:00
Stephen Toub and GitHub
2c9cf6f59d
Remove unused PackageVersions from Directory.Packages.props ( #1334 )
2025-10-09 21:28:00 +00:00
Jacob Alber and GitHub
4cd81fe8e7
.NET: fix: Make State Persistence APIs work better with PortableValue ( #1367 )
...
* fix: Make State Persistence APIs work better with PortableValue
* test: Temporarily disable checking for T=object in ReadStateAsync
2025-10-09 20:24:55 +00:00
Christian Glessner and GitHub
8967269d3e
Fix: Add missing ChatMessage[] handler to ChatProtocolExecutor ( #1337 )
...
- Added ChatMessage[] handler to ConfigureRoutes to support array dispatch
- Workflow runtime can dispatch messages as either List<ChatMessage> or ChatMessage[]
- Added 10 comprehensive unit tests validating message routing behavior
- Tests ensure functionality and protect against future refactoring (issue #782 )
- Updated code comments to reflect exact-type-matching requirement
Fixes issue where raw WorkflowBuilder with AIAgent nodes failed to receive
initial messages due to missing array type handler.
2025-10-09 10:00:09 +00:00
d16d56b555
Bump AWSSDK.Extensions.Bedrock.MEAI from 4.0.3.5 to 4.0.3.6 ( #1340 )
...
---
updated-dependencies:
- dependency-name: AWSSDK.Extensions.Bedrock.MEAI
dependency-version: 4.0.3.6
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-10-09 09:39:48 +00:00
f17bf0a502
Bump FluentAssertions from 8.7.0 to 8.7.1 ( #1341 )
...
---
updated-dependencies:
- dependency-name: FluentAssertions
dependency-version: 8.7.1
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-10-09 09:39:20 +00:00
Mark Wallace and GitHub
1b5e20b5b0
Version preview.251009.1 ( #1339 )
2025-10-09 08:42:49 +00:00
SergeyMenshykh and GitHub
15afc966ce
.NET: Add missing workflow properties to the workflow.definition tag ( #1261 )
...
* add workflow edge data properties to the workflow.definition tag.
* use workflow info classes for workflow.definition tag value
* add unit test
* fix test
* fix formatting issue
* remove flaky unit test
* remove unused package dependency
2025-10-08 21:51:59 +00:00
Chris and GitHub
988623e7b8
.NET Workflow - Update declarative code patterns ( #1313 )
...
* It hurts
* Fixed
* Namespace
* Namespace
2025-10-08 21:32:47 +00:00
Stephen Toub and GitHub
74864f353d
Update to latest OpenAI ( #1286 )
2025-10-08 21:09:52 +00:00
Jacob Alber and GitHub
5902bcb10a
.NET: [BREAKING] Propagate CancellationToken into Workflow Executors and message handlers ( #1280 )
...
* feat: Propagate CancellationToken to Executors
* Also adds cancellation propagation to `Executor`-accessible APIs
* Adds registrators for cancellable handlers to `RouteBuilder`
* [BREAKING]: Adds `CancellationToken` to `IMessageHandler.HandleAsync`
* test: Re-enable Concurrent Orchestration test
* refactor: Delete unused IInputCoordinator
* refactor: Remove superfluous argument qualifications
2025-10-08 00:28:44 +00:00
Chris and GitHub
eb049c43a6
.NET Workflows - Enhance support and validation for image input ( #1274 )
...
* Updated
* Comments
* Namespace
* Comment
* Cleanup
* Update agent definition
* Disable
* Config
* Enable
2025-10-08 00:00:34 +00:00
wuweng and GitHub
362652b966
.NET: Add Azure Monitor OpenTelemetry Exporter samples ( #1231 )
...
* Add Azure Monitor OpenTelemetry Exporter to enhance observability in agent samples
* add another sample code for application isnights
2025-10-07 23:16:32 +00:00
westey and GitHub
127bf68748
Reference the correct JsonUtilities class ( #1270 )
2025-10-07 22:02:19 +00:00
Chris and GitHub
1a81ed202e
Updated ( #1272 )
2025-10-07 19:09:41 +00:00
Tao Chen and GitHub
df5477921b
.NET: Add Orchestration SK->AF migration samples ( #1044 )
...
* Add Orchestration SK->AF migration samples
* fix samples
* clean up
* Add handoff
* Comments
* Address comments
* Fix build error
* Comments
2025-10-07 18:54:41 +00:00
Mark Wallace and GitHub
2b2d3a44a5
Version preview.251007.1 ( #1271 )
2025-10-07 18:30:12 +00:00
westey and GitHub
554e1617b3
Rename AsAIAgent to GetAIAgent and update for foundry as well ( #1257 )
2025-10-07 18:19:18 +00:00
SergeyMenshykh and GitHub
1cff86b4ff
enable enum serialization as strings and relaxed json escaping ( #1267 )
2025-10-07 17:07:13 +00:00
Stephen Toub and GitHub
959e5842c2
Removing duplicating update coalescing logic in AgentRunResponseExtensions ( #1169 )
2025-10-07 13:42:01 +00:00
d10b44d6bb
.NET: Enable access to hosted AIAgents via OpenAI Responses ( #947 )
...
* init
* wip
* wip wip wip
* wip wip
* open up API
* enable for multiple agents
* more wip
* make frontend respond.
* wip
* not sure if proper setup
* define type
* cleanup
* frontend streaming wip
* use System.Net.ServerSentEvents
* usings
* reformat via ichatclient
* merge main renaming + refactor
* fix main merge + fix sample (a2a change)
* fix sample
* some rebase (not working yet)
* make it at least build somehow
* make non-stream work without internal types
* Input without custom models
* implement streaming
* test frontend
* enable alerts and fix
* build fixes & rereview
* Update dotnet/src/Microsoft.Agents.AI.Hosting.OpenAI.Responses/Microsoft.Agents.AI.Hosting.OpenAI.Responses.csproj
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
* Update dotnet/src/Microsoft.Agents.AI.Hosting.OpenAI.Responses/Utils/ResponseItemJsonConverter.cs
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
* fix agent discovery
* rename
* rename project into Microsoft.Agents.AI.Hosting.OpenAI (no responses in name)
* PR address comments x1
* address PR comments x2
* correctly instantiate OpenAIResponse
* address PR comments x3
* reconfigure JSON serialization & handle AOT warnings
* fix build
* proper ref
* check update differently
* correct check
* exclude dotnet format diagnostics for IL2026 and IL3050
* space :)
* re-review
* add comments
* remove unnecessary using
* always take last openai response item
* set responseItem Id explicitly
* add agent.name validation for uri
* cleanup
---------
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
Co-authored-by: SergeyMenshykh <68852919+SergeyMenshykh@users.noreply.github.com >
2025-10-07 12:39:08 +00:00
SergeyMenshykh and GitHub
3fd5768b34
.NET: Improve structured output for chat client agent ( #1172 )
...
* improve structured output for chat client agent
* add comment to the result property
* remove code duplication and add tests
* refactor the CreateAIAgent extension methods to return specific types, so consumers can avoid unnecessary downcasting.
* fix type and remove unused using.
* add ChatClientAgentRunResponse and move AgentRunResponse to the abstractions package to reuse later.
* seal ChatClientAgentRunResponse
* update xml comment
* remove funcitons from sample
* rename agent for streaming
2025-10-07 12:04:26 +00:00
westey and GitHub
3dc14dac79
.NET: Add a CreateAIAgent extension method to IChatClient ( #1223 )
...
* Add a CreateAIAgent extension method to IChatClient
* Fix unit tests
* Add tests with null chat clients to ensure appropriate failure
* Switch to similar constructor
* Add ChatClientBuilder BuildAgent extensions
* Address code review comments.
2025-10-07 09:47:33 +00:00
74905af778
.NET: Fix bug where ChatClientAgent throws when providing a ChatMessageStore with a service that requries service storage ( #1229 )
...
* Fix bug where ChatClientAgent throws when providing a ChatMessageStore with a service that requries service storage
* Update dotnet/tests/Microsoft.Agents.AI.UnitTests/ChatClient/ChatClientAgentTests.cs
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
---------
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
2025-10-07 08:31:34 +00:00
7506046f43
.NET: Add sample to show ChatReducer usage ( #1221 )
...
* Add sample to show ChatReducer usage
* Apply suggestion from @Copilot
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
---------
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
2025-10-07 08:17:31 +00:00
7ebe00ec3d
[BREAKING] .NET: Workflow Off-Thread Execution Mode ( #1233 )
...
* Updates to async run loop.
* fix: Workflow Onwership can be release by nonowner
* fix: Incorrect handling of blockOnPending in StreamingRun
Depending on whether we are running in streaming on non-streaming mode, we may be using the StreamingRun in different ways. Unfortunately, the only place we can really know what is the actual state of execution is in the RunEventStream implementations.
This resulted in blocking where blocking was unneeded and occasionally not-blocking when blocking was needed.
The fix is to move the logic of handling this blocking into RunEventStream implementations.
* fix: Fix cleanup on error and end run
This ensures we clean up the background resources correctly.
* fix: Ensure we let the run loop proceed when shutting down
* fix: Add timeout for Input Waiting
* fix: Make the samples properly clean up `Run`s and `StreamingRun`s
* fix: Simplify Declarative Workflow Run disposal pattern
* Also fixes missing .Disposal() in Integration tests
---------
Co-authored-by: Ben Thomas <ben.thomas@microsoft.com >
2025-10-07 01:07:38 +00:00
0113e0466d
.NET Workflows - Fix code generation cases ( #1242 )
...
* Updated
* Passing
* Ready
* Update dotnet/tests/Microsoft.Agents.AI.Workflows.Declarative.IntegrationTests/Workflows/ConversationMessages.yaml
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
* Comment
* Code analysis
* Unit-tests/provider signature
* Comment
* Consistent
* Checkpoint
* Fixed
* Revert
* Test display name
* Enable tests
---------
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
2025-10-06 23:34:46 +00:00
00d5a09e01
Bump Aspire.Microsoft.Azure.Cosmos from 9.5.0 to 9.5.1 ( #1201 )
...
---
updated-dependencies:
- dependency-name: Aspire.Microsoft.Azure.Cosmos
dependency-version: 9.5.1
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-10-06 23:26:07 +00:00
f81b4a5abe
.NET Workflows - Fix converation behaviors for declarative worfklows ( #1237 )
...
* Updated
* Passing
* Ready
* Update dotnet/tests/Microsoft.Agents.AI.Workflows.Declarative.IntegrationTests/Workflows/ConversationMessages.yaml
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
* Comment
* Code analysis
* Unit-tests/provider signature
* Comment
* Consistent
---------
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
2025-10-06 22:04:41 +00:00
Michael McKechney and GitHub
f1694b0507
Correcting parameter assignment and using parameter naming vs relying on position ( #1239 )
2025-10-06 21:46:37 +00:00
Victor Dibia and GitHub
ee8d95b3dc
test: Make ChatClientAgent no-message test less flaky ( #1196 )
...
Capitalize instruction and relax assertion to accept any non-empty response instead of requiring exact text match. Fixes flaky test failures with reasoning models.
2025-10-06 19:09:01 +00:00
b2ab9931fd
Bump AWSSDK.Extensions.Bedrock.MEAI from 4.0.3.2 to 4.0.3.5 ( #1102 )
...
---
updated-dependencies:
- dependency-name: AWSSDK.Extensions.Bedrock.MEAI
dependency-version: 4.0.3.5
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-10-06 15:16:35 +00:00