Eduard van Valkenburg and GitHub
76900f0eab
Python: [BREAKING] parameter naming and other fixes ( #1255 )
...
* parameter naming and other fixes
* fix test
* fix azure openai responses decorator ordering
* fix test
* fix mypy
* fixes in options handling
* fix tests
* final fixes
* exclude macos tests
* fix model param
2025-10-07 21:18:48 +00:00
93577f76b1
Python: Add CHANGELOG.md to python folder with all merged PRs since first release ( #1205 )
...
* Initial plan
* Add CHANGELOG.md to python folder with all merged PRs since 1.0.0b251001
Co-authored-by: eavanvalkenburg <13749212+eavanvalkenburg@users.noreply.github.com >
* Update python/CHANGELOG.md
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
* Update python/CHANGELOG.md
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
* fixed headers in changelog
---------
Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com >
Co-authored-by: eavanvalkenburg <13749212+eavanvalkenburg@users.noreply.github.com >
Co-authored-by: Eduard van Valkenburg <eavanvalkenburg@users.noreply.github.com >
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
Co-authored-by: eavanvalkenburg <github@vanvalkenburg.eu >
2025-10-07 18:34:10 +00:00
a45e2ab28e
Python: Added method to expose agent as MCP server ( #1248 )
...
* Added method to expose agent as MCP server
* Update python/packages/core/agent_framework/_agents.py
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
* Update python/packages/core/agent_framework/_agents.py
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
* Addressed PR feedback
* Updated doc string
---------
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
2025-10-07 17:21:53 +00:00
8bb1266020
Python: Add PDF file support to OpenAI content parser with filename mapping ( #1121 )
...
* Add mapping for application media type in OpenAI responses client
* Enhance multimodal input samples: Add PDF testing functionality and fix image sample
* Standardize filename handling and add multimodal samples
- Standardized filename extraction logic between chat and responses clients
- Both clients now omit filename when not provided (no default fallback)
- Added Azure Responses API multimodal sample with PDF support
- Cleaned up Azure Chat sample to focus on supported features only
- Fixed test comment placement for better code documentation
- Updated README with clear API capability differences
* Enhance multimodal input samples with image and PDF handling
- Refactor image and PDF handling in `azure_chat_multimodal.py` and `openai_chat_multimodal.py` to use new utility functions.
- Add `load_sample_pdf` and `create_sample_image` functions for better test asset management.
- Remove redundant code for creating sample images and PDFs.
- Introduce a sample PDF file in `sample_assets` for testing purposes.
* Fix formatting in OpenAI chat client
---------
Co-authored-by: Dmytro Struk <13853051+dmytrostruk@users.noreply.github.com >
2025-10-07 17:04:33 +00:00
Giles Odigwe and GitHub
1d27b57672
Python: ollama + azureai openapi samples fix ( #1244 )
...
* ollama + azureai openapi samples fix
* small fix
2025-10-07 16:14:34 +00:00
Eric Zhu and GitHub
d01d9afb92
Python: Introduce add_agent functionality and added output_response to AgentExecutor; agent streaming behavior to follow workflow invocation ( #1184 )
...
* refactor AgentExecutor, add output_response flag for switching on or off workflow output for each agent.
* introduce add_agent
* make default agent's streaming to false
* address comments
* fix test
* add is_streaming to RunnerContext and WorkflowContext
* fix add_agent return
* fix tests
* address comments
* resolve conflict
* update to address comments
* fix
2025-10-07 16:11:40 +00:00
49f25358d7
Python: Sample on integration of Azure OpenAI Responses Client with a local MCP server ( #1215 )
...
* added a sample on integration of Azure OpenAI Responses Client with hosted Model Context Protocol (MCP)
* added additional comments mentioning that the Microsoft Learn MCP server can be replaced by any other desired MCP server
* corrected the MCP server type to local
* added a newline at the end
* Update python/samples/getting_started/agents/azure_openai/azure_responses_client_with_local_mcp.py
Co-authored-by: Dmytro Struk <13853051+dmytrostruk@users.noreply.github.com >
---------
Co-authored-by: Dmytro Struk <13853051+dmytrostruk@users.noreply.github.com >
2025-10-07 07:54:29 +00:00
Eduard van Valkenburg and GitHub
b49395fa3d
Python: added approval_mode and allowed_tools to local MCP ( #1203 )
...
* added approval_mode and allowed_tools to local MCP
* updated docs
2025-10-07 07:44:08 +00:00
66009c617d
docs: update dev.md to fix "Get the Code" section ( #1217 )
...
Co-authored-by: Eric Zhu <ekzhu@users.noreply.github.com >
2025-10-06 19:53:34 +00:00
Giles Odigwe and GitHub
4e6ae443cf
Python: OpenAI Clients accepting api_key callback ( #1139 )
...
* openai clients accepting callable
* fixes
* version checks
2025-10-06 19:51:34 +00:00
Eduard van Valkenburg and GitHub
714e7b50d4
Python: updated docstrings ( #1225 )
...
* updated docstrings
* fix tests and mypy
* hosted file search docstring update
* updated versions
2025-10-06 16:04:39 +00:00
b839669eee
Add Devcontainers to allow easy use of the AF repo from github codespaces ( #1224 )
...
* Add dev containers
* Add workspace folder and cs dev extension
* Try other workspace folder format
* Add default solution.
* Move default solution to settings.json
* Fix repo open
* Remove duplicate python codespace and rename folder
* Add recommended C# extensions and a default build task
* Add vscode icons extension by default
* Add python setup and customizations, plus ai studio for all
* Add bash command
* Try running devsetup from workspace folder
* Remove echo and cd
* Change workspace mount
* Change dotnet workspace name
* Revert workspacemount addition
* Try workspace mount to root
* remove trailing slash
* Try workspacefolder with var
* Revert to original approach
* Modify dev containers to work in main repo.
* Remove trailing comma
* 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-06 14:20:34 +00:00
8bd3e11d3e
Python: Standardize docstrings: Use Keyword Args for Settings classes and add environment variable examples ( #1202 )
...
* Initial plan
* Update Settings classes to use Keyword Args and add examples
Co-authored-by: eavanvalkenburg <13749212+eavanvalkenburg@users.noreply.github.com >
* Add examples and env var documentation to chat clients
Co-authored-by: eavanvalkenburg <13749212+eavanvalkenburg@users.noreply.github.com >
* Add env var docs and examples to Responses and AzureAI clients
Co-authored-by: eavanvalkenburg <13749212+eavanvalkenburg@users.noreply.github.com >
* Remove Args from class docstrings where they belong in __init__
Co-authored-by: eavanvalkenburg <13749212+eavanvalkenburg@users.noreply.github.com >
* Add env var docs and examples to Assistants clients
Co-authored-by: eavanvalkenburg <13749212+eavanvalkenburg@users.noreply.github.com >
* updated to keyword args
* Fix incorrect code block formatting in _workflows/_executor.py
Co-authored-by: eavanvalkenburg <13749212+eavanvalkenburg@users.noreply.github.com >
* Fix markdown code blocks in _workflows/_edge.py - use Sphinx format
Co-authored-by: eavanvalkenburg <13749212+eavanvalkenburg@users.noreply.github.com >
* Update _assistants_client.py
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
---------
Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com >
Co-authored-by: eavanvalkenburg <13749212+eavanvalkenburg@users.noreply.github.com >
Co-authored-by: eavanvalkenburg <github@vanvalkenburg.eu >
Co-authored-by: Eduard van Valkenburg <eavanvalkenburg@users.noreply.github.com >
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
2025-10-06 07:37:34 +00:00
0cd794abe7
added missing lib/utils.ts in devui frontend ( #1197 )
...
Co-authored-by: Alex Lavaee <alexlavaee@microsoft.com >
2025-10-06 07:34:34 +00:00
Victor Dibia and GitHub
5a7ca13af6
feat: Add name and description support to workflows ( #1183 )
...
Add optional name and description fields to workflows in both Python and .NET implementations, matching the existing agent API pattern.
Python changes:
- Add name/description parameters to WorkflowBuilder.__init__
- Add name/description attributes to Workflow class
- Include name/description in to_dict() serialization
- Add WORKFLOW_NAME and WORKFLOW_DESCRIPTION OTEL attributes
- Add tests in test_serialization.py and test_workflow_observability.py
.NET changes:
- Add Name and Description properties to Workflow and Workflow<T>
- Add WithName() and WithDescription() fluent methods to WorkflowBuilder
- Add WorkflowName and WorkflowDescription OTEL tags
- Add test in WorkflowBuilderSmokeTests.cs
This enables applications like DevUI to display human-readable workflow names (e.g., 'Data Processing Pipeline') instead of auto-generated UUIDs (e.g., 'Workflow 50fdd917').
Fixes : #1181
2025-10-04 15:20:17 +00:00
Eduard van Valkenburg and GitHub
fd819c6c02
Python: Introducing AI Function approval ( #1131 )
...
* support for local function approval
* small fix
* fix mypy
* added bigger test scenario's for function calling and approvals
* updated lock
* updated return message for rejection
* fix test
* updated function result content handling
2025-10-04 15:19:16 +00:00
01f438d710
Python: DevUI improvements. ( #1091 )
...
* enable deeplinking in ui, add agent details to entity info, add usage data, add middleware example in samples and foundry agent.
* update ui build
* Update python/packages/devui/frontend/src/components/workflow/workflow-input-form.tsx
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
* Update python/packages/devui/pyproject.toml
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
* Update python/packages/devui/pyproject.toml
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
* imporove mapping for agent nodes and serialiation for agent run events
* lint fixes
* update pyproj toml and ui updates
---------
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
2025-10-03 22:22:03 +00:00
54b35e76ed
Python: Updating python DEV_SETUP to add brew-based uv installation. ( #1173 )
...
* Updating python DEV_SETUP to add brew-based uv installation.
* 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-03 20:57:12 +00:00
50c532b4ae
docs: Update References to Agent2Agent protocol to use correct terminology ( #1162 )
...
Should be `Agent2Agent Protocol` not `Agent-to-Agent` unless talking about general agent to agent communication
Co-authored-by: Eric Zhu <ekzhu@users.noreply.github.com >
2025-10-03 19:10:05 +00:00
Evan Mattson and GitHub
c543dbaa92
Python: Default DevUI workflows to string input when start node is auto-wrapped agent ( #1143 )
...
* DevUI workflows default to string input when start node is AgentExecutor
* Remove unnecessary sample
* Fix lint issue
2025-10-03 08:11:38 +00:00
2696de7428
docs: add missing pre flag ( #1130 )
...
Co-authored-by: Eric Zhu <ekzhu@users.noreply.github.com >
2025-10-02 18:50:47 +00:00
8b80a03fbb
Python: updated docstrings of all _files ( #1107 )
...
* updated docstrings of all _files
* fix mypy
* fixed codeblocks in workflows and some other files
---------
Co-authored-by: Eric Zhu <ekzhu@users.noreply.github.com >
2025-10-02 16:18:58 +00:00
Dmytro Struk and GitHub
c7f20c8ec5
Python: Added Ollama example using OpenAIChatClient ( #1100 )
...
* Added Ollama example using OpenAIChatClient
* Small improvement
2025-10-02 15:14:29 +00:00
07db91174b
Python: Fix Azure AI Getting Started samples: Improve documentation and code readability ( #1089 )
...
* Initial plan
* Fix Azure AI samples: Add dotenv support, fix async input, improve docs
Co-authored-by: dmytrostruk <13853051+dmytrostruk@users.noreply.github.com >
* Remove dotenv.load_dotenv() and revert async input() changes per review feedback
Co-authored-by: dmytrostruk <13853051+dmytrostruk@users.noreply.github.com >
---------
Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com >
Co-authored-by: dmytrostruk <13853051+dmytrostruk@users.noreply.github.com >
2025-10-02 03:22:44 +00:00
cd1bdc1483
Python: Fix multimodal input sample: Document required environment variables and configuration options ( #1088 )
...
* Initial plan
* Update multimodal input sample to document required environment variables
Co-authored-by: dmytrostruk <13853051+dmytrostruk@users.noreply.github.com >
* Add examples showing how to pass deployment_name as parameter
Co-authored-by: dmytrostruk <13853051+dmytrostruk@users.noreply.github.com >
---------
Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com >
Co-authored-by: dmytrostruk <13853051+dmytrostruk@users.noreply.github.com >
2025-10-02 01:34:31 +00:00
Evan Mattson and GitHub
4f4890cf6a
Update getting started samples to reflect AF. Update a unit test. ( #1093 )
2025-10-02 01:20:12 +00:00
westey and GitHub
364188c44f
.NET: Add link inspector ( #1062 )
...
* Add link inspector
* Comment out excludedirs while it's empty
* Fix broken links
* More links fixes
* Push further fixes
* Fix more links
2025-10-01 16:43:17 +00:00
Giles Odigwe and GitHub
b0971fdec6
Python: Foundry Agent Completeness ( #954 )
...
* foundry completeness
* tests + openapi sample
* bing grounding sample
* options integration tests
* merge conflict fix
* fix failing test
* add mcp approval handling
2025-10-01 13:38:51 +00:00
Eduard van Valkenburg and GitHub
396e7ee48d
fix a2a import ( #1058 )
2025-10-01 13:21:46 +00:00
Evan Mattson and GitHub
19b9aeec5f
Python: Bug fixes for devui serialization and agent structured outputs ( #1055 )
...
* Bug fixes for devui serialization and agent structured outputs
* Fix typing
* Add mapper serialization unit tests
2025-10-01 11:55:54 +00:00
Eduard van Valkenburg and GitHub
2575e8cab0
Python: Packaging fixes ( #1056 )
...
* small updates to setup
* post1
* reset version
* updated package status
2025-10-01 11:54:26 +00:00
Eric Zhu and GitHub
08b602c290
update link ( #1051 )
2025-10-01 11:18:11 +00:00
Evan Mattson and GitHub
f19ebf5b1b
Python: Update README with links to video content. Include initial code samples as a quickstart ( #1049 )
...
* Update README with links to video content. Include initial code samples as a quickstart.
* Include import
* Fix .net code
* Simplify sample
* Fix python spacing
* updates
* Remove .DS_Store file.
2025-10-01 08:22:21 +00:00
Evan Mattson and GitHub
34e03d1e5c
Add metapackage metadata stub to restore flit builds ( #1043 )
2025-10-01 07:20:33 +00:00
Giles Odigwe and GitHub
b88143b686
Agents + Chat Client Samples Doctsring Updates ( #1028 )
...
* agents + chat client samples doctsring updates
* fixes
2025-10-01 07:18:53 +00:00
Evan Mattson and GitHub
fb51d917fd
Python: semantic-kernel to agent-framework migration code samples ( #1045 )
...
* wip migrations
* Wip: workflow migrations
* Add migration samples for sk to af
* Fix typo
* Fixes
2025-10-01 07:02:03 +00:00
Evan Mattson and GitHub
1ec98130d2
Correct version numbers based on PEP440 ( #1040 )
2025-10-01 11:23:09 +09:00
Evan Mattson and GitHub
d3219b5e93
Python: Clarifications on installing packages in README ( #1036 )
...
* Clarifications on installing packages in README
* Updates
2025-10-01 01:12:56 +00:00
bdfa62c834
Python: Fix: MCP tool calls flatten nested JSON arguments (handle $ref schemas) ( #990 )
...
* Initial plan
* Fix nested JSON argument flattening in MCP tools - handle $ref schemas
Co-authored-by: dmytrostruk <13853051+dmytrostruk@users.noreply.github.com >
* Apply code formatting fixes from ruff linter
Co-authored-by: dmytrostruk <13853051+dmytrostruk@users.noreply.github.com >
* Fixed formatting
* Refactor JSON type mapping to use match-case statement
Co-authored-by: eavanvalkenburg <13749212+eavanvalkenburg@users.noreply.github.com >
---------
Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com >
Co-authored-by: dmytrostruk <13853051+dmytrostruk@users.noreply.github.com >
Co-authored-by: eavanvalkenburg <13749212+eavanvalkenburg@users.noreply.github.com >
2025-10-01 00:22:46 +00:00
fa9f5c1aed
Python:DevUI Fixes ( #1035 )
...
* fix event reset on thread change, enable multiline input, enable pasting of files and screenshots
* UI updates and improved remove discovery
* ui and other fixes
---------
Co-authored-by: Evan Mattson <35585003+moonbox3@users.noreply.github.com >
2025-10-01 00:21:22 +00:00
Eduard van Valkenburg and GitHub
40f5b6d8fe
Python: Tool definitions otel ( #936 )
...
* added tool_definitions
* removed json dump
* improved logic
* updated for pydantic
2025-09-30 20:11:54 +00:00
Eduard van Valkenburg and GitHub
54ad135914
Python: [BREAKING] added SerializationMixin and applied to contents, agents, chat client… ( #1012 )
...
* added SerializationMixin and applied to contents, agents, chat clients, removed AFBaseModel
* fix annotations type
* mypy fixes
* fix tests
* fix serializable subvalues and added large docstring
* updated indents in code block
* fixed exported urls
2025-09-30 19:53:46 +00:00
Eduard van Valkenburg and GitHub
3eb26632ce
Python: fix string parsing in azure openai client ( #1023 )
...
* fix string parsing in azure openai client
* test fix
* changed setup func name and check if there is a conn string
* redid parsing in safe way
2025-09-30 19:33:12 +00:00
Tao Chen and GitHub
f7e9490494
Python: Update installation instructions ( #1026 )
...
* Update installation instructions
* address comments
2025-09-30 19:28:54 +00:00
9a888ae66c
Bump vite from 7.1.3 to 7.1.5 in /python/packages/devui/frontend ( #869 )
...
Bumps [vite](https://github.com/vitejs/vite/tree/HEAD/packages/vite ) from 7.1.3 to 7.1.5.
- [Release notes](https://github.com/vitejs/vite/releases )
- [Changelog](https://github.com/vitejs/vite/blob/main/packages/vite/CHANGELOG.md )
- [Commits](https://github.com/vitejs/vite/commits/v7.1.5/packages/vite )
---
updated-dependencies:
- dependency-name: vite
dependency-version: 7.1.5
dependency-type: direct:development
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Victor Dibia <chuvidi2003@gmail.com >
Co-authored-by: Mark Wallace <127216156+markwallace-microsoft@users.noreply.github.com >
2025-09-30 17:34:23 +00:00
Ben Thomas and GitHub
df3e12b2ed
.Net: Visualizing dotnet workflows ( #882 )
...
* Adding more test for workflow vizualization.
* Improving README for sample.
* More cleanup.
* Removing rendering of workflow visualization and adding basic support for mermaid format.
* Adding basic mermaid tests.
* Improving sample. Switching to another branch.
* About to merge from main.
* Formatting.
* More fromatting.
* Removng uneeded call to ToUpper.
* Adding README.
* Moving samples under workflow to workflows.
* Removing uneeded README for map-reduce sample.
2025-09-30 16:29:19 +00:00
522bf4bf23
Python: [Doc] Update python observability sample with Grafana dashboards ( #995 )
...
* Update python observability sample with Grafana dashboards
* fix case
---------
Co-authored-by: Eric Zhu <ekzhu@users.noreply.github.com >
2025-09-30 16:16:20 +00:00
Evan Mattson and GitHub
b42bb700fb
Python: [BREAKING] Python: Rename workflow to workflows ( #1007 )
...
* Rename workflow to workflows
* Update occurence of workflow to new name
2025-09-30 11:21:34 +00:00
35d2d9fe7f
Python: [BREAKING] Main to core ( #983 )
...
* removed pydantic from types
* fix assistants client
* Remove Pydantic usage from workflow code.
* updated lock and test fixes
* moved main to core, and setup meta package
* updated versions
* updated lock
* fixed agents dependency
* added retry to merge tests
---------
Co-authored-by: Evan Mattson <evan.mattson@microsoft.com >
2025-09-30 07:18:36 +00:00
b8df0cd03f
Python: Add Agent Framework Lab Lightning package with RL training examples ( #937 )
...
* add math agent
* .
* update
* update debug mode
* add tau2 training
* .
* .
* .
* .
* add tests
* .
* revert observability
* update readme
* fix task serialization issue
* fix exception
* add inline docs
* update readme
* update pyproject toml
* minor fix
* update and use git lfs
* update
* update ignore file to use lab specific
* fix type
* update depedency
---------
Co-authored-by: Eric Zhu <ekzhu@users.noreply.github.com >
2025-09-30 01:18:49 +00:00