mirror of
https://github.com/microsoft/agent-framework.git
synced 2026-06-16 21:04:09 +08:00
88ea9d08c7
* Initial plan * Update code for Microsoft.Extensions.AI.Abstractions 10.4.0 breaking changes - Rename FunctionApprovalRequestContent → ToolApprovalRequestContent - Rename FunctionApprovalResponseContent → ToolApprovalResponseContent - Rename UserInputRequestContent → ToolApprovalRequestContent - Rename UserInputResponseContent → ToolApprovalResponseContent - Update .FunctionCall property → .ToolCall with FunctionCallContent casts where needed - Update .Id property → .RequestId on the renamed types - Rename FunctionApprovalRequestEventGenerator → ToolApprovalRequestEventGenerator - Rename FunctionApprovalResponseEventGenerator → ToolApprovalResponseEventGenerator Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> * Update OpenAI 2.9.1, ME.AI 10.4.0, fix breaking API changes Co-authored-by: stephentoub <2642209+stephentoub@users.noreply.github.com> * Fix remaining ME.AI 10.4.0 breaking changes: MCP approval types, .Output→.Outputs Co-authored-by: stephentoub <2642209+stephentoub@users.noreply.github.com> * Use pattern matching with `when` for ToolApprovalRequestContent/FunctionCallContent Co-authored-by: stephentoub <2642209+stephentoub@users.noreply.github.com> * Update Azure.AI.OpenAI to 2.9.0-beta.1 Co-authored-by: stephentoub <2642209+stephentoub@users.noreply.github.com> * Fix remaining GetResponsesClient(model) build failures for Azure.AI.OpenAI 2.9.0-beta.1 Co-authored-by: stephentoub <2642209+stephentoub@users.noreply.github.com> * Address review feedback: remove redundant type checks in TestRequestAgent.cs and fix error message in AIAgentHostExecutor.cs Co-authored-by: stephentoub <2642209+stephentoub@users.noreply.github.com> * Update Azure.AI.Projects to 2.0.0-beta.2 with namespace migration - Azure.AI.Projects 2.0.0-beta.1 → 2.0.0-beta.2 - Azure.AI.Projects.OpenAI → Azure.AI.Extensions.OpenAI (transitive) - Agent types moved to Azure.AI.Projects.Agents namespace - AgentRecord.Versions.Latest → AgentRecord.GetLatestVersion() - OpenAPIFunctionDefinition → OpenApiFunctionDefinition - BingCustomSearchToolParameters → BingCustomSearchToolOptions - MemorySearchPreviewTool.UpdateDelay → UpdateDelayInSecs - Azure.Identity 1.17.1 → 1.19.0 - Microsoft.Identity.Client.Extensions.Msal 4.78.0 → 4.83.1 Co-authored-by: rogerbarreto <19890735+rogerbarreto@users.noreply.github.com> * Fix remaining type renames for Azure.AI.Projects 2.0.0-beta.2 - BrowserAutomationToolParameters → BrowserAutomationToolOptions - MemoryUpdateOptions.UpdateDelay stays as UpdateDelay (not renamed) - WaitForMemoriesUpdateAsync parameter order: pollingInterval before options - AIProjectAgentsOperations → AgentsClient Co-authored-by: rogerbarreto <19890735+rogerbarreto@users.noreply.github.com> * Fix format errors and OpenTelemetry test for ME.AI 10.4.0 - Remove unused 'using Azure.AI.Extensions.OpenAI' and fix import ordering in Agent_With_AzureAIProject/Program.cs - Update OpenTelemetryAgentTests: gen_ai.tool.definitions is now always emitted regardless of EnableSensitiveData per ME.AI 10.4.0 change (dotnet/extensions#7346). Tool definitions are not considered sensitive. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> * Fix GetRepoFolder() to work in git worktrees Use 'workflow-samples' directory as repo root marker instead of '.git', which fails in worktrees (.git is a file) and also matches too early when a '.github' folder exists in subdirectories. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> * Fix formatting: remove unused usings and fix import ordering dotnet format applied across 59 impacted projects. Primarily removes unnecessary 'using Azure.AI.Projects' where Azure.AI.Projects.Agents provides all needed types, and fixes import ordering per editorconfig. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> * Disable AzureAIAgentsPersistent integration tests (#4769) Azure.AI.Agents.Persistent 1.2.0-beta.9 references McpServerToolApprovalResponseContent which was removed in ME.AI 10.4.0 (renamed to ToolApprovalResponseContent), causing TypeLoadException at runtime. Mark all 6 test classes with IntegrationDisabled trait until Persistent ships a version targeting ME.AI 10.4.0+. Upstream fix: https://github.com/Azure/azure-sdk-for-net/pull/56929 Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> * Add README with compatibility note for AzureAI.Persistent (#4769) Documents that Azure.AI.Agents.Persistent 1.2.0-beta.9 is only compatible with ME.AI ≤10.3.0 and OpenAI ≤2.8.0 due to type renames in ME.AI 10.4.0. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> * Fix file encoding: restore UTF-8 BOM on Persistent test files Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> * Mark AzureAI.Persistent as IsPackable=false (#4769) Prevent shipping until Azure.AI.Agents.Persistent targets ME.AI 10.4.0+. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> * Moving IsPackable after import --------- Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com> Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> Co-authored-by: stephentoub <2642209+stephentoub@users.noreply.github.com> Co-authored-by: rogerbarreto <19890735+rogerbarreto@users.noreply.github.com>
88ea9d08c7
·
2026-03-20 14:29:29 +00:00
History
Declarative Workflows
Declarative Workflows is a no-code platform for orchestrating AI agents to accomplish complex, multi-step tasks with ease. It allows users to design, execute, and monitor workflows using simple declarative configurations—no coding required. By connecting multiple AI agents and services, it enables automation of sophisticated processes that traditionally require custom engineering.
We've provided a set of Sample Workflows within the agent-framework repository.
Please refer to the README for setup instructions to run the sample workflows in your environment.
As part of our Getting Started with Declarative Workflows, we've provided a console application that is able to execute any declarative workflow.
Actions
⚙️ Foundry Actions
| Action | Description |
|---|---|
| AddConversationMessage | Adds a message to the current conversation thread. Useful for dynamically appending information or system responses. |
| CopyConversationMessages | Duplicates messages from one conversation or context to another. Helps maintain continuity across related interactions. |
| CreateConversation | Starts a new conversation instance. Used when initiating separate dialogues or workflows. |
| DeleteConversation | Permanently removes an existing conversation. Helps manage storage and ensure privacy compliance. |
| InvokeAzureAgent | Triggers an Azure-based AI agent to perform a task or return a response. Useful for leveraging external cognitive services. |
| RetrieveConversationMessage | Fetches a single message from a conversation history. Enables referencing or reusing specific past exchanges. |
| RetrieveConversationMessages | Retrieves multiple messages from the conversation history. Useful for context reconstruction or auditing. |
🧑💼 Human Input
| Action | Description |
|---|---|
| Question | Presents a query or prompt requiring human input. Integrates human decision-making into automated processes. |
🧩 State Management
| Action | Description |
|---|---|
| ClearAllVariables | Resets all variables in the current context. Ensures a clean state before starting new logic or sessions. |
| EditTableV2 | Modifies data in a structured table format. Useful for updating variable sets or configuration data dynamically. |
| ParseValue | Extracts or converts data into a usable format. Often used for transforming input before assignment or evaluation. |
| ResetVariable | Restores a specific variable to its default or initial value. Helps maintain predictable state transitions. |
| SendActivity | Sends an activity or message to another system or user. Facilitates communication between components or external services. |
| SetMultipleVariables | Assigns values to multiple variables simultaneously. Useful for batch initialization or updates. |
| SetTextVariable | Assigns text-based data to a variable. Commonly used for string operations or message composition. |
| SetVariable | Sets or updates the value of a single variable. Fundamental for maintaining and controlling state within workflows. |
🧭 Control Flow
| Action | Description |
|---|---|
| BreakLoop | Exits the current loop prematurely when a specified condition is met. Useful for preventing unnecessary iterations once a goal is achieved. |
| ConditionGroup | Defines a set of conditional statements that can be evaluated together. It allows complex decision logic to be grouped for readability and maintainability. |
| ConditionItem | Represents a single conditional statement within a group. It evaluates a specific logical condition and determines the next step in the flow. |
| ContinueLoop | Skips the remaining steps in the current iteration and continues with the next loop cycle. Commonly used to bypass specific cases without exiting the loop entirely. |
| EndConversation | Terminates the current conversation session. It ensures any necessary cleanup or final actions are performed before closing. |
| EndWorkflow | Ends the current workflow or sub-workflow within a broader conversation flow. This helps modularize complex interactions. |
| Foreach | Iterates through a collection of items, executing a set of actions for each. Ideal for processing lists or batch operations. |
| GotoAction | Jumps directly to a specified action within the workflow. Enables non-linear navigation in the logic flow. |