Skip to content

IterativeLoopConfiguration

NexusLabs.Needlr.AgentFramework

NexusLabs.Needlr.AgentFramework.Iterative

IterativeLoopConfiguration Class

Snapshot of the resolved configuration used for an IIterativeAgentLoop run. Echoed on Configuration so consumers can inspect the loop's settings after execution without referencing the original IterativeLoopOptions.

public sealed record IterativeLoopConfiguration : System.IEquatable<NexusLabs.Needlr.AgentFramework.Iterative.IterativeLoopConfiguration>

Inheritance System.Object 🡒 IterativeLoopConfiguration

Implements System.IEquatable<IterativeLoopConfiguration>

Constructors

IterativeLoopConfiguration(ToolResultMode, int, int, Nullable<int>, Nullable<double>, string, ToolCompletionCheckMode) Constructor

Snapshot of the resolved configuration used for an IIterativeAgentLoop run. Echoed on Configuration so consumers can inspect the loop's settings after execution without referencing the original IterativeLoopOptions.

public IterativeLoopConfiguration(NexusLabs.Needlr.AgentFramework.Iterative.ToolResultMode ToolResultMode, int MaxIterations, int MaxToolRoundsPerIteration, System.Nullable<int> MaxTotalToolCalls, System.Nullable<double> BudgetPressureThreshold, string LoopName, NexusLabs.Needlr.AgentFramework.Iterative.ToolCompletionCheckMode CheckCompletionAfterToolCalls);

Parameters

ToolResultMode ToolResultMode

How tool results were fed back to the model.

MaxIterations System.Int32

Maximum iterations allowed.

MaxToolRoundsPerIteration System.Int32

Maximum tool-calling rounds per iteration in MultiRound.

MaxTotalToolCalls System.Nullable<System.Int32>

Cumulative tool call limit, or null if unlimited.

BudgetPressureThreshold System.Nullable<System.Double>

Token budget pressure threshold, or null if disabled.

LoopName System.String

Human-readable name used in diagnostics and progress events.

CheckCompletionAfterToolCalls ToolCompletionCheckMode

When the IsComplete predicate was checked relative to tool calls.

Properties

IterativeLoopConfiguration.BudgetPressureThreshold Property

Token budget pressure threshold, or null if disabled.

public System.Nullable<double> BudgetPressureThreshold { get; init; }

Property Value

System.Nullable<System.Double>

IterativeLoopConfiguration.CheckCompletionAfterToolCalls Property

When the IsComplete predicate was checked relative to tool calls.

public NexusLabs.Needlr.AgentFramework.Iterative.ToolCompletionCheckMode CheckCompletionAfterToolCalls { get; init; }

Property Value

ToolCompletionCheckMode

IterativeLoopConfiguration.LoopName Property

Human-readable name used in diagnostics and progress events.

public string LoopName { get; init; }

Property Value

System.String

IterativeLoopConfiguration.MaxIterations Property

Maximum iterations allowed.

public int MaxIterations { get; init; }

Property Value

System.Int32

IterativeLoopConfiguration.MaxToolRoundsPerIteration Property

Maximum tool-calling rounds per iteration in MultiRound.

public int MaxToolRoundsPerIteration { get; init; }

Property Value

System.Int32

IterativeLoopConfiguration.MaxTotalToolCalls Property

Cumulative tool call limit, or null if unlimited.

public System.Nullable<int> MaxTotalToolCalls { get; init; }

Property Value

System.Nullable<System.Int32>

IterativeLoopConfiguration.ToolResultMode Property

How tool results were fed back to the model.

public NexusLabs.Needlr.AgentFramework.Iterative.ToolResultMode ToolResultMode { get; init; }

Property Value

ToolResultMode