Skip to content

EveTurnOptions

NexusLabs.Eve

EveTurnOptions Class

Carries the settings shared by sending a message and responding to human input.

public sealed record EveTurnOptions : System.IEquatable<NexusLabs.Eve.EveTurnOptions>

Inheritance System.Object → EveTurnOptions

Implements System.IEquatable<EveTurnOptions>

Remarks

eve 0.31.0 requires a turn to carry either a message or input responses, never both, so the payload is supplied to SendAsync(EveMessageContent, EveTurnOptions, CancellationToken) or RespondAsync(IReadOnlyList<EveInputResponse>, EveTurnOptions, CancellationToken) directly. Keeping it off this type makes the rejected combination impossible to express.

Properties

EveTurnOptions.ClientContext Property

Gets ephemeral context used only for this model call.

public NexusLabs.Eve.EveClientContext? ClientContext { get; init; }

Property Value

EveClientContext

EveTurnOptions.Headers Property

Gets headers that apply to this POST and its stream reconnects. These values override non-protected client-level headers but cannot replace authentication-owned or otherwise protected headers.

public System.Collections.Generic.IReadOnlyDictionary<string,string>? Headers { get; init; }

Property Value

System.Collections.Generic.IReadOnlyDictionary<System.String,System.String>

EveTurnOptions.OutputSchema Property

Gets the optional JSON Schema that the turn's structured result must satisfy.

public System.Nullable<System.Text.Json.JsonElement> OutputSchema { get; init; }

Property Value

System.Nullable<System.Text.Json.JsonElement>

EveTurnOptions.ProtectedHeaderOverrides Property

Gets explicit overrides for protected headers on this POST and its stream reconnects. Every name must also appear in AllowedProtectedHeaderOverrides. Never populate this collection directly from untrusted inbound headers.

public System.Collections.Generic.IReadOnlyDictionary<string,string>? ProtectedHeaderOverrides { get; init; }

Property Value

System.Collections.Generic.IReadOnlyDictionary<System.String,System.String>

EveTurnOptions.StreamReconnectPolicy Property

Gets the reconnect policy for this turn's event stream.

public NexusLabs.Eve.EveStreamReconnectPolicy? StreamReconnectPolicy { get; init; }

Property Value

EveStreamReconnectPolicy

EveTurnOptions.TurnPolicy Property

Gets how eve handles this message when the session already has an active turn.

public System.Nullable<NexusLabs.Eve.EveTurnPolicy> TurnPolicy { get; init; }

Property Value

System.Nullable<EveTurnPolicy>

Remarks

This applies only to a message sent to an existing session. It is omitted when the turn creates the session, because a new session has no active turn, and when the turn carries only input responses, matching the upstream client. Leaving this unset sends no policy, so eve 0.33.0 and later steer the active turn.