pub struct AgentLoopContext {
pub provider: Box<dyn Provider>,
pub tools: Vec<Box<dyn Tool>>,
pub messages: Vec<AgentMessage>,
pub model: String,
pub system: Option<String>,
pub steering_queue: Option<Arc<Mutex<VecDeque<String>>>>,
pub follow_up_queue: Option<Arc<Mutex<VecDeque<String>>>>,
}Expand description
Input context for the agent loop.
Fields§
§provider: Box<dyn Provider>The LLM provider.
tools: Vec<Box<dyn Tool>>Available tools.
messages: Vec<AgentMessage>Initial conversation messages.
model: StringModel identifier to use.
system: Option<String>Optional system prompt.
steering_queue: Option<Arc<Mutex<VecDeque<String>>>>Steering queue (high-priority user messages injected before next turn).
follow_up_queue: Option<Arc<Mutex<VecDeque<String>>>>Follow-up queue (messages injected when agent would otherwise stop).
Auto Trait Implementations§
impl !RefUnwindSafe for AgentLoopContext
impl !UnwindSafe for AgentLoopContext
impl Freeze for AgentLoopContext
impl Send for AgentLoopContext
impl Sync for AgentLoopContext
impl Unpin for AgentLoopContext
impl UnsafeUnpin for AgentLoopContext
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