Commit Graph
214 Commits
Author SHA1 Message Date
Stephen ToubandGitHub 456e7d1b65 Round 2 of cleanup for agent runtime and orchestrations (#164)
- Moved InProcessRuntime type into abstractions package and deleted InProcess package.
- Moved several members of IAgentRuntime to be extension methods instead, e.g. multiple GetActorAsync overloads.
- Added synchronous RegisterMessageHandler overloads and used them to avoid unnecessary async usage at call sites.
- Removed unnecessary surface area from InProcessRuntime, e.g. StopAsync, RunUntilIdleAsync, etc.
- Fixed spin loop in InProcessRuntime that would consume an entire core for the duration of the orchestration's operation.
- Removed a bunch of allocation from InProcessRuntime.
- Made a runtime optional for orchestrations, defaulting to using a temporary InProcessRuntime if none is provided.
- Removed custom delegate types from orchestrations.
- Consolidated namespaces.
- Used records to simplify message classes.
- Tweaked naming on AgentActor to make purpose of protected methods more clear.
- Removed invocation in AgentActor.InvokeAsync of empty update / isFinal parameter.
- Changed OrchestrationHandoffs to avoid needing to pass in agents duplicatively.
- Made various extension methods, such as those on OrchestrationHandoffsExtensions, into instance methods.
2025-07-11 11:12:18 -04:00
westeyandGitHub b708e2507d Add PoC CopilotStudio agent (#84)
* Add project and skeleton files.

* Add CopilotStudioAgent implementation

* Add CopilotStudio integration tests

* Fix typos and PR feedback.

* Fix .net framework build errors.

* Address PR comments

* Remove temp test.

* Add rawresponse for streaming updates and more comments.

* Add TODO to review streaming updates

* Address PR comments and fix some issues with streaming messages.

* Map additional properties to agent reponses

* Update CopilotStudio integration tests to match new approach.

* Update copilot studio namespaces/project names to match new naming

* Add todo's for AIContent types.

* Remove files from PR.

* Fix up sln file.

* Update .gitignore.

* Remove duplicate package version items.
2025-07-11 09:20:40 +00:00
Stephen ToubandGitHub 4a0f8dcbe0 Port Agent Runtime abstractions / inprocess runtime (#149) 2025-07-09 09:08:45 -04:00
7c8ec5ec19 .NET Port Agent Orchestration (#107)
* Checkpoint

* Checkpoint

* Namespaces

* Namespace

* Cleanup

* Namespace order

* Fix sync

* Formatting

* Formatting

* Namespace

* Namespace order

* Code convention

* Naming

* Naming

* Text handling

* Text handling

* Namespace

* Namespace order

* Namespace ordering

* Test

* ValueTask

* net472

* Test fix

* Fix namespace (net472)

* Namespace

* Fix conditional namespace

* Fix type expression

* Compatibility and cleanup

* Sample compatibility

* Sample compat

* Test compat

* modifier order

* Simply http-stub

* Formating fix for unit-test

* Fix test

* Real fix

* Test clean-up

* Update dotnet/src/Microsoft.Agents.Orchestration/Handoff/HandoffOrchestration.cs

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

* Fix build errors after merging

---------

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Stephen Toub <stoub@microsoft.com>
2025-07-08 13:04:34 -04:00
Mark WallaceandGitHub 95738b0ac2 Renaming to use Microsoft.Extensions prefix (#120)
* Rename the folders

* Rename the .csproj files

* Some build file updates

* Update namespaces

* Fix order of imports

* Fix order of imports

* Fix order of imports
2025-07-01 08:15:28 +00:00
Roger BarretoandGitHub 06a690685f .Net: Add Reasoning Model Integration tests (#100)
* Add reasoning integration tests

* Adding Reasoning Model config
2025-06-25 19:50:29 +00:00
Dmytro StrukandGitHub 47dcad6b49 .Net: Added Azure AI Persistent Agents (#81)
* Added PersistentAgentsChatClient

* Added integration tests

* Small fixes

* Added sample

* Added TODO for tools

* Small rename

* Removed user-secrets id

* Renamed project

* Fixed warning

* Fixed warning

* More fixes

* More fixes
2025-06-19 14:01:26 +00:00
westeyandGitHub d1d69af482 Add tests for ChatClientAgent with OpenAI responses (#82)
* Add tests for ChatClientAgent with OpenAI responses

* Address PR comments

* Fix typo
2025-06-19 09:12:24 +00:00
westeyandGitHub e6bfc51367 Add additional integration tests and add OpenAIAssistant integration tests project. (#79)
* Add additional integration tests and add OpenAIAssistant integration tests project.

* Address PR comments.

* Address PR comments.
2025-06-17 11:43:29 +00:00
westeyandGitHub 293cdb1846 Add test infrastructure for agent conformance tests (#77)
* Add test infrastructure for agent conformance tests

* Address PR comments.

* Switch TargetFrameworks to have inline condition
2025-06-16 11:32:20 +01:00
westeyandGitHub d6dc360215 Update ChatClientAgentThread to support both in-memory and service storage. (#70)
* Update ChatClientAgentThread to support both in-memory and service storage.

* Fix typos.

* Address PR comments

* Move code to reusable sections.

* Remove DefaultThreadStorageLocation

* Change thread type naming and make it internal

* Fix bug for streaming case.

* Add additional unit tests

* Add more unit tests to verify agent's thread update behavior.
2025-06-12 13:28:08 +00:00
2c75f13337 .Net: Add ChatClientAgent Samples - OpenAI Model Client (#72)
* Add Streaming API

* Removing InstructionsRole

* Updating thread notification strategy

* Fix net472 failing

* Small fixes

* Adding Samples for OpenAI

* WIP samples

* default runsettings for unit tests

* Adding first samples with OpenAIModelChatClientAgents

* Removing OpenAI dependency on the sample utility

* Release -> Debug update for GettingStarted project

* Fix GettingStarted.csproj failing to build in Release

* Update dotnet/src/Shared/Samples/BaseSample.cs

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

* Address PR feedback

* Fix Step 1 samples

* Simplify code

* Address PR feedback

---------

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
2025-06-12 12:22:07 +00:00
Dmytro StrukandGitHub 41facf3a2d .Net: Added shared classes (#58)
* Added Throw shared class

* Added Experimental attribute

* Added IsExternalInit

* Added TrimAttributes

* Small update

* Small update

* Suppress warning

* Added comment

* Updated LegacySupport.props

* Small updates
2025-06-04 08:44:12 +00:00
westeyandGitHub d0531bb93b Add skeleton dotnet project structure (#49)
* Add skeleton dotnet project structure

* Fix casing in import statement.

* Moving tests folder to be a sibling of src.

* Update tests to use directory.builds.props and only build necessary frameworks.

* Move more test props to directory.build.props

* Add AotCompatible flag and .net 8.0

* Rename Tests to UnitTests

* Add global.json file

* Update publish mapping for unit tests to debug, to reduce build times.
2025-05-29 15:58:57 +00:00