Evan Mattson and GitHub
11d6dcfe80
Python: Fix middleware terminate flag to exit function calling loop immediately ( #2868 )
...
* Fix middleware terminate flag to exit function calling loop immediately
* Eliminating duck typing
* Improve function exec result handling
* Fix race condition
* Fix mypy issues
2025-12-16 09:52:52 +00:00
Eduard van Valkenburg and GitHub
3139347526
Python: [BREAKING] Observability updates ( #2782 )
...
* fixes Python: Add env_file_path parameter to setup_observability() similar to AzureOpenAIChatClient
Fixes #2186
* WIP on updates using configure_azure_monitor
* improved setup and clarity
* fixed root .env.example
* revert changes
* updated files
* updated sample
* updated zero code
* test fixes and fixed links
* fix devui
* removed planning docs
* added enable method and updated readme and samples
* clarified docstring
* add return annotation
* updated naming
* update capatilized version
* updated readme and some fixes
* updated decorator name inline with the rest
* feedback from comments addressed
2025-12-16 06:56:30 +00:00
3c379718e9
Python: Use agent description in HandoffBuilder auto-generated tools ( #2713 ) ( #2714 )
...
## Summary
Enhanced `HandoffBuilder._apply_auto_tools` to use the target agent's
description when creating handoff tools, providing more informative tool
descriptions for LLMs.
## Changes
- Modified `_apply_auto_tools` to extract `description` from
`AgentExecutor._agent` when available
- Updated iteration to use `.items()` for more efficient dict traversal
- Handoff tools now use agent descriptions instead of generic placeholders
## Example
Before: "Handoff to the refund_agent agent."
After: "You handle refund requests. Ask for order details and process refunds."
## Testing
- All handoff tests pass (20/20)
- No breaking changes to existing API
Fixes #2713
Co-authored-by: Evan Mattson <35585003+moonbox3@users.noreply.github.com >
2025-12-16 01:31:26 +00:00
Evan Mattson and GitHub
a7298757f5
Python: Fix WorkflowAgent to emit yield_output as agent response ( #2866 )
...
* Fix WorkflowAgent to emit yield_output as agent response
* use raw_representation
* Raw representation handling
2025-12-16 01:14:26 +00:00
Evan Mattson and GitHub
0dcebc6eae
Python: Filter framework kwargs from MCP tool invocations ( #2870 )
...
* Filter framework kwargs from MCP tool invocations
* Fixes
2025-12-16 01:10:09 +00:00
Tao Chen and GitHub
e0ff153ee9
Python: Remove warnings from workflow builder on not using factories ( #2808 )
...
* Revert concurrent
* Fix comments
2025-12-12 07:56:16 +00:00
Richard Ortega and GitHub
e008144187
Update OpenAIResponses.yaml to match AgentSchema ( #2598 )
...
1. Update `connection` child types -- `kind: ApiKey` to `kind: key` otherwise schema will fail: https://microsoft.github.io/AgentSchema/reference/apikeyconnection/
2. Update `outputSchema`'s `PropertySchema` to be `kind` instead of `type` otherwise schema will fail: https://microsoft.github.io/AgentSchema/reference/propertyschema/
2025-12-12 07:55:01 +00:00
Evan Mattson and GitHub
0fc7933a92
Fix WorkflowAgent to include thread convo history. Enable checkpointing. ( #2774 )
2025-12-12 04:04:31 +00:00
Dmytro Struk and GitHub
d7434d59ce
Python: Added custom args and thread object to ai_function kwargs ( #2769 )
...
* Added an example of using kwargs in ai_function
* Added thread object to ai_function kwargs
* Updated docs
* Small fix
* Added thread parameter filtering
2025-12-12 01:53:04 +00:00
eb1117fff4
.NET: adds support for labels in edges, fixes rendering of labels in dot a… ( #1507 )
...
* adds support for labels in edges, fixes rendering of labels in dot and mermaid, adds rendering of labels in edges
* Update dotnet/src/Microsoft.Agents.AI.Workflows/Visualization/WorkflowVisualizer.cs
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
* escaping edge labels, adding tests for labels containing strange characters that would break the diagram and enabling the previous signature so the API has backwards compatibility.
* Unify label in EdgeData
* Edge API adjustments, removed useless "sanitizer"
* fixed test
---------
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
Co-authored-by: Jacob Alber <jaalber@microsoft.com >
Co-authored-by: Chris <66376200+crickman@users.noreply.github.com >
2025-12-12 00:31:45 +00:00
16230d3b20
Bump actions/checkout from 5 to 6 ( #2404 )
...
Bumps [actions/checkout](https://github.com/actions/checkout ) from 5 to 6.
- [Release notes](https://github.com/actions/checkout/releases )
- [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md )
- [Commits](https://github.com/actions/checkout/compare/v5...v6 )
---
updated-dependencies:
- dependency-name: actions/checkout
dependency-version: '6'
dependency-type: direct:production
update-type: version-update:semver-major
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Chris <66376200+crickman@users.noreply.github.com >
python-1.0.0b251211
2025-12-11 18:43:52 +00:00
Dmytro Struk and GitHub
8d53b20026
Python: Updated package versions ( #2784 )
...
* Updated package versions
* Small fix
2025-12-11 18:39:08 +00:00
Eduard van Valkenburg and GitHub
c376868ec9
Python: added more complete parsing for mcp tool arguments ( #2756 )
...
* added more complete parsing for mcp tool arguments
* fixed mypy
* added nonlocal model counter, and some fixes
* fixes in naming logic
* extracted json parsing function, added parametrized test and checked coverage
2025-12-11 17:24:08 +00:00
8bb9927f3c
Bump Azure.AI.AgentServer.AgentFramework from 1.0.0-beta.4 to 1.0.0-beta.5 ( #2778 )
...
---
updated-dependencies:
- dependency-name: Azure.AI.AgentServer.AgentFramework
dependency-version: 1.0.0-beta.5
dependency-type: direct:production
update-type: version-update:semver-patch
- dependency-name: Azure.AI.AgentServer.AgentFramework
dependency-version: 1.0.0-beta.5
dependency-type: direct:production
update-type: version-update:semver-patch
- dependency-name: Azure.AI.AgentServer.AgentFramework
dependency-version: 1.0.0-beta.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-12-11 14:08:20 +00:00
194486c4cc
Bump Azure.Identity from 1.17.0 to 1.17.1 ( #2780 )
...
---
updated-dependencies:
- dependency-name: Azure.Identity
dependency-version: 1.17.1
dependency-type: direct:production
update-type: version-update:semver-patch
- dependency-name: Azure.Identity
dependency-version: 1.17.1
dependency-type: direct:production
update-type: version-update:semver-patch
- dependency-name: Azure.Identity
dependency-version: 1.17.1
dependency-type: direct:production
update-type: version-update:semver-patch
- dependency-name: Azure.Identity
dependency-version: 1.17.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-12-11 11:04:22 +00:00
0413f4220a
Bump AWSSDK.Extensions.Bedrock.MEAI from 4.0.4.7 to 4.0.4.11 ( #2777 )
...
---
updated-dependencies:
- dependency-name: AWSSDK.Extensions.Bedrock.MEAI
dependency-version: 4.0.4.11
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-12-11 11:01:19 +00:00
67e83042cf
.NET: Add Conversation State Sample (Step05) ( #2697 )
...
* Initial plan
* Add Agent_OpenAI_Step05_Conversation sample for conversation state management
Co-authored-by: rogerbarreto <19890735+rogerbarreto@users.noreply.github.com >
* Update Program.cs comment to accurately describe the sample
Co-authored-by: rogerbarreto <19890735+rogerbarreto@users.noreply.github.com >
* Update the code to use the ConversationClient more in line with the samples in OpenAI
* Apply suggestions from code review
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
* Changing sample to use ChatClientAgent and conversationId in GetNewThread
---------
Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com >
Co-authored-by: rogerbarreto <19890735+rogerbarreto@users.noreply.github.com >
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
2025-12-11 10:58:42 +00:00
5da1c2fd4c
code ql sm04598 ( #2723 )
...
Co-authored-by: Mark Wallace <127216156+markwallace-microsoft@users.noreply.github.com >
2025-12-11 10:34:58 +00:00
SergeyMenshykh and GitHub
989b6ebe71
.NET: [BREAKING] Prevent nulls in AIAgent property ( #2719 )
...
* prevent nulls in AIAgent property
* address feedback
2025-12-11 09:50:25 +00:00
Evan Mattson and GitHub
3481914981
Capture file IDs from code interpreter in streaming responses ( #2741 )
2025-12-11 07:30:19 +00:00
Kurt and GitHub
4c6a5d4aa1
Python: fix: GroupChat ManagerSelectionResponse JSON Schema for OpenAI Structured Outpu… ( #2750 )
...
* fix: ManagerSelectionResponse JSON Schema for OpenAI Structured Output Strict Mode
* refactor: install pre-commit then commit again
2025-12-11 02:34:12 +00:00
Tao Chen and GitHub
191779ce80
Python: Add factory pattern to concurrent orchestration builder ( #2738 )
...
* Add factory pattern to concurrent orchestration builder
* Update readme
* Address AI comments
* Fix unit tests
* Fix import
* Prevent multiple calls to set participants or factories
* Add comments
* Mitigate warnings
* Fix mypy
* Address comments
* Address Copilot comments
* Fix tests
2025-12-11 01:23:28 +00:00
638fbb5f03
Update Microsoft.Extensions.AI.* packages to 10.1.0 ( #2735 )
...
* Initial plan
* Update Microsoft.Extensions.AI dependencies to latest versions (10.1.0)
Co-authored-by: stephentoub <2642209+stephentoub@users.noreply.github.com >
---------
Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com >
Co-authored-by: stephentoub <2642209+stephentoub@users.noreply.github.com >
Co-authored-by: Roger Barreto <19890735+rogerbarreto@users.noreply.github.com >
2025-12-10 19:04:05 +00:00
Tao Chen and GitHub
523305ac62
Python: Add factory pattern to sequential orchestration builder ( #2710 )
...
* Add factory pattern to sequential orchestration builder
* Use temp list to avoid override
* Add sample and some other fixes
* Fix comments
* Small fix
* Update readme
2025-12-10 18:16:10 +00:00
3f4eeb00be
Python: Change DurableAIAgent log level from warning to debug when invoked without thread ( #2736 )
...
* Initial plan
* Change logger.warning to logger.debug for missing thread
Co-authored-by: larohra <41490930+larohra@users.noreply.github.com >
* Fix test to use getMessage() method for log records
Co-authored-by: larohra <41490930+larohra@users.noreply.github.com >
* Remove test for logging change per review feedback
Co-authored-by: larohra <41490930+larohra@users.noreply.github.com >
---------
Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com >
Co-authored-by: larohra <41490930+larohra@users.noreply.github.com >
Co-authored-by: Laveesh Rohra <larohra@microsoft.com >
2025-12-10 17:57:08 +00:00
Evan Mattson and GitHub
b378ca75d1
Python: extend HITL support for all orchestration patterns ( #2620 )
...
* Support HITL for orchestration patterns
* Cleanup around naming
* Fix typing issues
* Clean up
* Naming clean up
* Updates to HITL to make it cleaner
* Rename human input hook to orchestration request info
* Clean up per PR feedback
2025-12-10 15:59:29 +00:00
0d9ae1920d
.NET: use valid Gemini model ( #2695 )
...
* use proper Gemini model
* use named parameters
---------
Co-authored-by: Roger Barreto <19890735+rogerbarreto@users.noreply.github.com >
2025-12-10 12:23:06 +00:00
90964acd2d
.NET: Add LoggingAgent wrapper for ILogger-based observability ( #2701 )
...
* Initial plan
* Add LoggingAgent class and UseLogging extension method
Co-authored-by: rogerbarreto <19890735+rogerbarreto@users.noreply.github.com >
* Add unit tests for LoggingAgent and fix JSON serialization error handling
Co-authored-by: rogerbarreto <19890735+rogerbarreto@users.noreply.github.com >
* Add comments explaining unreachable code in test async iterators
Co-authored-by: rogerbarreto <19890735+rogerbarreto@users.noreply.github.com >
* Fix file encoding - add UTF-8 BOM to all C# files
Co-authored-by: rogerbarreto <19890735+rogerbarreto@users.noreply.github.com >
* Address Format issues
* Addres format
* Break up extensions in dedicated files
* Adjust class names
* Add xmldoc info
---------
Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com >
Co-authored-by: rogerbarreto <19890735+rogerbarreto@users.noreply.github.com >
2025-12-10 12:17:01 +00:00
Roger Barreto and GitHub
1949193a2e
.NET: Update the migration guidelines with latest changes ( #2703 )
...
* Update the migration guidelines with latest changes
* Update code interpreter sample
2025-12-10 11:57:10 +00:00
bc8dbe4b05
Bump AWSSDK.Extensions.Bedrock.MEAI from 4.0.4.6 to 4.0.4.7 ( #2173 )
...
---
updated-dependencies:
- dependency-name: AWSSDK.Extensions.Bedrock.MEAI
dependency-version: 4.0.4.7
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>
Co-authored-by: Chris <66376200+crickman@users.noreply.github.com >
2025-12-10 11:42:42 +00:00
Stephen Toub and GitHub
b01fd23cd2
Update analyzers for .NET 10 SDK ( #2611 )
2025-12-10 10:34:56 +00:00
2f0b2db12a
fix: Standardize OpenAI API key environment variable naming ( #1001 ) ( #2629 )
...
- Replace OPENAI_APIKEY with OPENAI_API_KEY across all samples
- Replace AZURE_FOUNDRY_OPENAI_APIKEY with AZURE_FOUNDRY_OPENAI_API_KEY
- Ensures consistency with OpenAI's standard naming convention
- Applies to .NET and Python samples
Fixes #1001
Co-authored-by: Alexander Zarei <alzarei@users.noreply.github.com >
2025-12-10 10:33:35 +00:00
7be860e4c4
Bump Aspire.Hosting.Azure.CognitiveServices from 13.0.1 to 13.0.2 ( #2624 )
...
---
updated-dependencies:
- dependency-name: Aspire.Hosting.Azure.CognitiveServices
dependency-version: 13.0.2
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>
Co-authored-by: Chris <66376200+crickman@users.noreply.github.com >
2025-12-10 09:32:11 +00:00
1dce2581b8
Bump Aspire.Hosting.AppHost from 13.0.1 to 13.0.2 ( #2623 )
...
---
updated-dependencies:
- dependency-name: Aspire.Hosting.AppHost
dependency-version: 13.0.2
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>
Co-authored-by: Chris <66376200+crickman@users.noreply.github.com >
2025-12-10 09:32:04 +00:00
9313168eeb
Bump Aspire.Microsoft.Azure.Cosmos from 13.0.1 to 13.0.2 ( #2625 )
...
---
updated-dependencies:
- dependency-name: Aspire.Microsoft.Azure.Cosmos
dependency-version: 13.0.2
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>
Co-authored-by: Chris <66376200+crickman@users.noreply.github.com >
2025-12-10 09:31:10 +00:00
b391088a68
Bump MishaKav/pytest-coverage-comment from 1.1.59 to 1.2.0 ( #2255 )
...
Bumps [MishaKav/pytest-coverage-comment](https://github.com/mishakav/pytest-coverage-comment ) from 1.1.59 to 1.2.0.
- [Release notes](https://github.com/mishakav/pytest-coverage-comment/releases )
- [Changelog](https://github.com/MishaKav/pytest-coverage-comment/blob/main/CHANGELOG.md )
- [Commits](https://github.com/mishakav/pytest-coverage-comment/compare/v1.1.59...v1.2.0 )
---
updated-dependencies:
- dependency-name: MishaKav/pytest-coverage-comment
dependency-version: 1.2.0
dependency-type: direct:production
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Chris <66376200+crickman@users.noreply.github.com >
2025-12-10 02:21:56 +00:00
Dmytro Struk and GitHub
43302fb4cd
Python: Updated package versions ( #2737 )
...
* Updated package versions
* Updated changelog
python-1.0.0b251209
2025-12-09 22:58:45 +00:00
0965a83dcd
.NET Workflows - Update Declarative Integration Tests for File Cases ( #2733 )
...
* Updated
* Update dotnet/tests/Microsoft.Agents.AI.Workflows.Declarative.IntegrationTests/Agents/VisionAgentProvider.cs
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
* Consistency
---------
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
2025-12-09 21:25:26 +00:00
2caf1bb151
.NET: [Durable Agents] Update CHANGELOG with release notes for past releases ( #2669 )
...
* .NET: [Durable Agents] Update CHANGELOG with release notes for past releases
Backfills the CHANGELOG.md files with the last several updates.
* Update dotnet/src/Microsoft.Agents.AI.DurableTask/CHANGELOG.md
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
* Update the Azure Functions changelog and add GHCP changelog instructions for these projects
* Tweak instructions
* Remove the timestamp requirement
* Rename instructions file
---------
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
2025-12-09 20:27:24 +00:00
dec4b3885d
Bump Azure.AI.OpenAI from 2.7.0-beta.1 to 2.7.0-beta.2 ( #2626 )
...
---
updated-dependencies:
- dependency-name: Azure.AI.OpenAI
dependency-version: 2.7.0-beta.2
dependency-type: direct:production
update-type: version-update:semver-patch
- dependency-name: Azure.AI.OpenAI
dependency-version: 2.7.0-beta.2
dependency-type: direct:production
update-type: version-update:semver-patch
- dependency-name: Azure.AI.OpenAI
dependency-version: 2.7.0-beta.2
dependency-type: direct:production
update-type: version-update:semver-patch
- dependency-name: Azure.AI.OpenAI
dependency-version: 2.7.0-beta.2
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>
Co-authored-by: Chris <66376200+crickman@users.noreply.github.com >
2025-12-09 20:16:23 +00:00
Giles Odigwe and GitHub
b55095f0fb
azureai image gen sample update ( #2709 )
2025-12-09 13:50:04 +00:00
SergeyMenshykh and GitHub
69225b4aa2
.NET: [BREAKING] Change namespaces of the Microsoft.Agents.AI.OpenAI classes ( #2627 )
...
* change namespaces for agents and extension methods of the Microsoft.Agents.AI.OpenAI package
* remove unnecessary namespace
* remove unused namespaces
* fix compilation issues and rrolled back removed run methods
* sort usings
* add extension methods for AIAgent to work with OpenAI Responses primitives
* Move OpenAIChatClientAgent and OpenAIResponseClientAgent to samples
* sort usings
* sort usings
2025-12-09 12:58:44 +00:00
Laveesh Rohra and GitHub
71d9d268dd
Python: Fix DurableState schema serializations ( #2670 )
...
* Fix created at
* Add pattern matching
2025-12-08 22:38:45 +00:00
c6e73a4ebe
Bump danielpalme/ReportGenerator-GitHub-Action from 5.5.0 to 5.5.1 ( #2680 )
...
Bumps [danielpalme/ReportGenerator-GitHub-Action](https://github.com/danielpalme/reportgenerator-github-action ) from 5.5.0 to 5.5.1.
- [Release notes](https://github.com/danielpalme/reportgenerator-github-action/releases )
- [Commits](https://github.com/danielpalme/reportgenerator-github-action/compare/5.5.0...5.5.1 )
---
updated-dependencies:
- dependency-name: danielpalme/ReportGenerator-GitHub-Action
dependency-version: 5.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-12-08 21:59:01 +00:00
Victor Dibia and GitHub
d889fa6f87
Python: Title: DevUI Fix WorkflowFailedEvent error extraction ( #2706 )
...
* Title: Fix WorkflowFailedEvent error extraction to use details instead of error Body:
Summary
Fixed WorkflowFailedEvent mapping to extract error message from details.message instead of non-existent error attribute
Added support for including details.extra context in error messages when present
Problem
The WorkflowFailedEvent handler in _mapper.py was reading event.error, but WorkflowFailedEvent uses a details attribute (of type WorkflowErrorDetails), not error. This caused all workflow failures to display "Unknown error" in the UI instead of the actual error message.
Fix
Updated the handler to match the pattern already used by ExecutorFailedEvent:
Read from event.details instead of event.error
Extract details.message for the error text
Include details.extra context when available
* improve error handling consistency
2025-12-08 21:44:32 +00:00
Chris and GitHub
1e6aedb3f9
Updated ( #2707 )
2025-12-08 21:30:21 +00:00
d7ca96923b
Python: Update fan in fan out sample to show concurrency ( #2705 )
...
* Update fan in fan out sample to show concurrency
* Update python/samples/getting_started/workflows/parallelism/fan_out_fan_in_edges.py
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
---------
Co-authored-by: Victor Dibia <chuvidi2003@gmail.com >
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
2025-12-08 19:53:37 +00:00
Victor Dibia and GitHub
0675000f4b
fixes Python: DevUI fails when uploading Pdf file (tested on Python Foundry Agent) ( #2675 )
...
Fixes #2652
2025-12-08 17:00:57 +00:00
551219cb55
Python: Feature/fix context provider lifecycle agentic mode ( #2650 )
...
* refactor KB for index creation logic
* add user agent header for tracking
* fix mypy issues
* fix agentic mode bug for search context provider
---------
Co-authored-by: farzad528 <farzad528@users.noreply.github.com >
2025-12-08 09:52:18 +00:00
Evan Mattson and GitHub
c34af002b8
Improve sample logging ( #2692 )
2025-12-08 06:56:45 +00:00