pub struct ConversationRuntime<C, T> { /* private fields */ }Implementations§
Source§impl<C, T> ConversationRuntime<C, T>where
C: ApiClient,
T: ToolExecutor,
impl<C, T> ConversationRuntime<C, T>where
C: ApiClient,
T: ToolExecutor,
pub fn new( session: Session, api_client: C, tool_executor: T, permission_policy: PermissionPolicy, system_prompt: Vec<String>, ) -> Self
pub fn new_with_features( session: Session, api_client: C, tool_executor: T, permission_policy: PermissionPolicy, system_prompt: Vec<String>, feature_config: RuntimeFeatureConfig, ) -> Self
pub fn with_max_iterations(self, max_iterations: usize) -> Self
pub fn with_auto_compaction_input_tokens_threshold(self, threshold: u32) -> Self
Sourcepub fn with_unknown_tool_hinter<F>(self, hinter: F) -> Self
pub fn with_unknown_tool_hinter<F>(self, hinter: F) -> Self
Register a fallback that maps an unknown tool name to a list of
real tool names to suggest. Used by claudette to turn the brain’s
confabulated group names (facts, markets, notes) into the
group’s actual tools — PermissionPolicy::suggest_for is generic
and can’t know which tool group a name refers to.
pub fn run_turn( &mut self, user_input: impl Into<String>, prompter: Option<&mut dyn PermissionPrompter>, ) -> Result<TurnSummary, RuntimeError>
Sourcepub fn run_turn_with_images(
&mut self,
user_input: impl Into<String>,
images: Vec<(String, String)>,
prompter: Option<&mut dyn PermissionPrompter>,
) -> Result<TurnSummary, RuntimeError>
pub fn run_turn_with_images( &mut self, user_input: impl Into<String>, images: Vec<(String, String)>, prompter: Option<&mut dyn PermissionPrompter>, ) -> Result<TurnSummary, RuntimeError>
Same as Self::run_turn but the user message also carries N image
attachments ((media_type, base64_data) pairs). Used by the TUI’s
clipboard-paste / @path flow.
pub fn compact(&self, config: CompactionConfig) -> CompactionResult
pub fn estimated_tokens(&self) -> usize
pub fn usage(&self) -> &UsageTracker
pub fn session(&self) -> &Session
pub fn into_session(self) -> Session
Auto Trait Implementations§
impl<C, T> !RefUnwindSafe for ConversationRuntime<C, T>
impl<C, T> !Send for ConversationRuntime<C, T>
impl<C, T> !Sync for ConversationRuntime<C, T>
impl<C, T> !UnwindSafe for ConversationRuntime<C, T>
impl<C, T> Freeze for ConversationRuntime<C, T>
impl<C, T> Unpin for ConversationRuntime<C, T>
impl<C, T> UnsafeUnpin for ConversationRuntime<C, T>where
C: UnsafeUnpin,
T: UnsafeUnpin,
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> 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