pub struct AgentBuilder { /* private fields */ }Implementations§
Source§impl AgentBuilder
impl AgentBuilder
pub fn provider(self, p: impl Provider + 'static) -> AgentBuilder
Sourcepub fn provider_boxed(self, p: Box<dyn Provider>) -> AgentBuilder
pub fn provider_boxed(self, p: Box<dyn Provider>) -> AgentBuilder
Accept a pre-boxed provider. Useful when the caller already has a
Box<dyn Provider> (e.g., the delegation primitive, which builds
child providers via a factory closure).
pub fn tool(self, t: impl Tool + 'static) -> AgentBuilder
pub fn tools(self, ts: Vec<Box<dyn Tool>>) -> AgentBuilder
pub fn system_prompt(self, s: impl Into<String>) -> AgentBuilder
pub fn append_system_prompt(self, s: impl Into<String>) -> AgentBuilder
pub fn model(self, m: impl Into<String>) -> AgentBuilder
pub fn max_turns(self, n: u32) -> AgentBuilder
pub fn max_tokens(self, n: u32) -> AgentBuilder
pub fn temperature(self, t: f32) -> AgentBuilder
pub fn thinking_budget(self, tokens: u32) -> AgentBuilder
pub fn working_dir(self, p: impl Into<PathBuf>) -> AgentBuilder
pub fn permission_policy( self, p: impl PermissionPolicy + 'static, ) -> AgentBuilder
pub fn memory(self, m: impl Memory + 'static) -> AgentBuilder
pub fn session_id(self, id: impl Into<String>) -> AgentBuilder
pub fn hook(self, h: impl Hook + 'static) -> AgentBuilder
pub fn mcp_server(self, config: McpServerConfig) -> AgentBuilder
pub fn on_event( self, f: impl Fn(&AgentEvent) + Send + Sync + 'static, ) -> AgentBuilder
pub fn enable_broadcast(self, capacity: usize) -> AgentBuilder
pub fn reporter(self, r: impl Reporter + 'static) -> AgentBuilder
pub fn event_filter( self, f: impl Fn(&AgentEvent) -> bool + Send + Sync + 'static, ) -> AgentBuilder
pub fn cancel_token(self, token: CancellationToken) -> AgentBuilder
pub fn auto_compact(self, enabled: bool) -> AgentBuilder
pub fn compact_threshold(self, threshold: f64) -> AgentBuilder
pub fn tool_result_budget(self, chars: usize) -> AgentBuilder
Sourcepub fn turns_elapsed_cadence(self, n: u32) -> AgentBuilder
pub fn turns_elapsed_cadence(self, n: u32) -> AgentBuilder
Set the tool-output compression level (default Off). Compression is
applied to each tool result before the per-result cap and the overall
tool-result budget run.
How often HookEvent::TurnsElapsed fires (default 10). Set to 0 to
disable. Used by skill-nudge hooks for agent-curated skill review.
pub fn compression_level(self, level: CompressionLevel) -> AgentBuilder
Sourcepub fn with_messages(self, msgs: Vec<Message>) -> AgentBuilder
pub fn with_messages(self, msgs: Vec<Message>) -> AgentBuilder
Pre-populate conversation history (for provider switching mid-session).
Sourcepub fn benchmark_mode(self, enabled: bool) -> AgentBuilder
pub fn benchmark_mode(self, enabled: bool) -> AgentBuilder
Enable benchmark mode (self-verification loop for terminal-bench).
pub fn build(self) -> Result<Agent, CerseiError>
Sourcepub async fn run_with(self, prompt: &str) -> Result<AgentOutput, CerseiError>
pub async fn run_with(self, prompt: &str) -> Result<AgentOutput, CerseiError>
Build + run in one shot.
Trait Implementations§
Source§impl Default for AgentBuilder
impl Default for AgentBuilder
Source§fn default() -> AgentBuilder
fn default() -> AgentBuilder
Returns the “default value” for a type. Read more
Auto Trait Implementations§
impl Freeze for AgentBuilder
impl !RefUnwindSafe for AgentBuilder
impl Send for AgentBuilder
impl Sync for AgentBuilder
impl Unpin for AgentBuilder
impl UnsafeUnpin for AgentBuilder
impl !UnwindSafe for AgentBuilder
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
Source§impl<T> Downcast for Twhere
T: Any,
impl<T> Downcast for Twhere
T: Any,
Source§fn into_any(self: Box<T>) -> Box<dyn Any>
fn into_any(self: Box<T>) -> Box<dyn Any>
Convert
Box<dyn Trait> (where Trait: Downcast) to Box<dyn Any>. Box<dyn Any> can
then be further downcast into Box<ConcreteType> where ConcreteType implements Trait.Source§fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
Convert
Rc<Trait> (where Trait: Downcast) to Rc<Any>. Rc<Any> can then be
further downcast into Rc<ConcreteType> where ConcreteType implements Trait.Source§fn as_any(&self) -> &(dyn Any + 'static)
fn as_any(&self) -> &(dyn Any + 'static)
Convert
&Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &Any’s vtable from &Trait’s.Source§fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
Convert
&mut Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &mut Any’s vtable from &mut Trait’s.Source§impl<T> DowncastSync for T
impl<T> DowncastSync for T
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> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more