pub struct LlmAgent { /* private fields */ }Expand description
Concrete Agent implementation that runs a Gemini Live event loop.
Tools are declared at build time and sent during session setup. The event loop subscribes to SessionEvents, auto-dispatches tool calls, detects transfers, and emits AgentEvents.
Implementations§
Source§impl LlmAgent
impl LlmAgent
Sourcepub fn builder(name: impl Into<String>) -> LlmAgentBuilder
pub fn builder(name: impl Into<String>) -> LlmAgentBuilder
Start building a new LlmAgent.
Sourcepub fn dispatcher(&self) -> &ToolDispatcher
pub fn dispatcher(&self) -> &ToolDispatcher
Access the tool dispatcher (for testing/introspection).
Sourcepub fn middleware(&self) -> &MiddlewareChain
pub fn middleware(&self) -> &MiddlewareChain
Access the middleware chain.
Sourcepub fn plugins(&self) -> &PluginManager
pub fn plugins(&self) -> &PluginManager
Access the plugin manager.
Trait Implementations§
Source§impl Agent for LlmAgent
impl Agent for LlmAgent
Source§fn run_live<'life0, 'life1, 'async_trait>(
&'life0 self,
ctx: &'life1 mut InvocationContext,
) -> Pin<Box<dyn Future<Output = Result<(), AgentError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn run_live<'life0, 'life1, 'async_trait>(
&'life0 self,
ctx: &'life1 mut InvocationContext,
) -> Pin<Box<dyn Future<Output = Result<(), AgentError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Run this agent on a live session. Returns when the agent is done
(turn complete, transfer, or disconnect).
Auto Trait Implementations§
impl !Freeze for LlmAgent
impl !RefUnwindSafe for LlmAgent
impl Send for LlmAgent
impl Sync for LlmAgent
impl Unpin for LlmAgent
impl !UnwindSafe for LlmAgent
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