pub trait Conversation {
// Required methods
fn history(&self) -> &Vec<Message>;
fn add_message(&mut self, message: Message);
fn push_user_input(&mut self, text: String);
fn maybe_summarize(&mut self);
fn send_once<'a>(
&'a mut self,
) -> Pin<Box<dyn Future<Output = Result<Option<String>>> + Send + 'a>>;
}Expand description
Conversation trait: async-friendly via boxed futures so implementors can perform network calls.
Implementations live in the deepseek submodule.
Required Methods§
Sourcefn add_message(&mut self, message: Message)
fn add_message(&mut self, message: Message)
Add an arbitrary message to the history (any role).
Sourcefn push_user_input(&mut self, text: String)
fn push_user_input(&mut self, text: String)
Push a user input into history (convenience for typical flows).
Sourcefn maybe_summarize(&mut self)
fn maybe_summarize(&mut self)
Optionally trigger summarization immediately.