pub struct AgentLoopConfig {
pub max_iterations: usize,
pub enable_tools: bool,
pub require_approval: bool,
pub prompt_injection_protection: bool,
pub token_lifetime_secs: u64,
pub no_final_required: bool,
pub fallback_chain: Option<Arc<Mutex<ProviderFallbackChain>>>,
pub token_budget: Option<Arc<Mutex<TokenBudget>>>,
pub ravenfabric: Option<RavenFabricClient>,
}Expand description
Agent loop configuration
Fields§
§max_iterations: usizeMaximum iterations before forcing completion
enable_tools: boolWhether to enable tool calling
require_approval: boolRequire human approval for tool calls
prompt_injection_protection: boolEnable prompt-injection defense on LLM responses
token_lifetime_secs: u64Maximum session lifetime in seconds (0 = unlimited) When non-zero, the agent loop will stop after this duration to enforce credential/session expiry.
no_final_required: boolWhen true, treat any non-tool-call response as completion (no FINAL: required)
fallback_chain: Option<Arc<Mutex<ProviderFallbackChain>>>Optional provider fallback chain — tries providers in order on failure
token_budget: Option<Arc<Mutex<TokenBudget>>>Optional token budget — limits total tokens used per session
ravenfabric: Option<RavenFabricClient>Optional RavenFabric client — reports agent status and results to mesh
Trait Implementations§
Source§impl Clone for AgentLoopConfig
impl Clone for AgentLoopConfig
Source§fn clone(&self) -> AgentLoopConfig
fn clone(&self) -> AgentLoopConfig
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for AgentLoopConfig
impl Debug for AgentLoopConfig
Auto Trait Implementations§
impl !RefUnwindSafe for AgentLoopConfig
impl !UnwindSafe for AgentLoopConfig
impl Freeze for AgentLoopConfig
impl Send for AgentLoopConfig
impl Sync for AgentLoopConfig
impl Unpin for AgentLoopConfig
impl UnsafeUnpin for AgentLoopConfig
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> FutureExt for T
impl<T> FutureExt for T
Source§fn with_context(self, otel_cx: Context) -> WithContext<Self>
fn with_context(self, otel_cx: Context) -> WithContext<Self>
Source§fn with_current_context(self) -> WithContext<Self>
fn with_current_context(self) -> WithContext<Self>
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
Source§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
Wrap the input message
T in a tonic::Request