// Copyright (c) Microsoft. All rights reserved.
using Microsoft.Extensions.AI;
namespace Microsoft.Agents.AI.DurableTask;
///
/// Options for running a durable agent.
///
public sealed class DurableAgentRunOptions : AgentRunOptions
{
///
/// Gets or sets whether to enable tool calls for this request.
///
public bool EnableToolCalls { get; set; } = true;
///
/// Gets or sets the collection of tool names to enable. If not specified, all tools are enabled.
///
public IList? EnableToolNames { get; set; }
///
/// Gets or sets the response format for the agent's response.
///
public ChatResponseFormat? ResponseFormat { get; set; }
///
/// Gets or sets whether to fire and forget the agent run request.
///
///
/// If is true, the agent run request will be sent and the method will return immediately.
/// The caller will not wait for the agent to complete the run and will not receive a response. This setting is useful for
/// long-running tasks where the caller does not need to wait for the agent to complete the run.
///
public bool IsFireAndForget { get; set; }
}