// Copyright (c) Microsoft. All rights reserved. using System; using Microsoft.Agents.AI; using Microsoft.Extensions.AI; namespace AgentConversation.IntegrationTests; /// /// Represents a single step within a , combining the agent to invoke, /// an optional input message, and an optional validation delegate. /// public sealed class ConversationStep { /// /// Gets or sets the name of the agent to invoke for this step. /// Must match a key in . /// public required string AgentName { get; init; } /// /// Gets or sets the optional input message to send to the agent. /// When , the agent is invoked with no new user input (useful for /// eliciting a response from the existing conversation context). /// public ChatMessage? Input { get; init; } /// /// Gets or sets an optional delegate that validates the agent response and metrics for this step. /// When , no validation is performed. /// public Action? Validate { get; init; } }