Skip to main content

AgentMemory

Trait AgentMemory 

Source
pub trait AgentMemory {
    // Required methods
    fn save(&mut self, entry: MemoryEntry) -> Result<usize>;
    fn save_batch(&mut self, entries: Vec<MemoryEntry>) -> Result<Vec<usize>>;
    fn delete(&mut self, id: usize) -> Result<()>;
    fn compact(&mut self) -> Result<usize>;
    fn count(&self) -> usize;
    fn count_active(&self) -> usize;
    fn snapshot(&self, dest: &Path) -> Result<PathBuf>;
    fn add_session(
        &mut self,
        id: &str,
        start: usize,
        end: usize,
        channel: &str,
        summary: &str,
    ) -> Result<()>;
    fn get_session_summary(&self, session_id: &str) -> Result<Option<String>>;
}

Required Methods§

Source

fn save(&mut self, entry: MemoryEntry) -> Result<usize>

Source

fn save_batch(&mut self, entries: Vec<MemoryEntry>) -> Result<Vec<usize>>

Source

fn delete(&mut self, id: usize) -> Result<()>

Source

fn compact(&mut self) -> Result<usize>

Source

fn count(&self) -> usize

Source

fn count_active(&self) -> usize

Source

fn snapshot(&self, dest: &Path) -> Result<PathBuf>

Source

fn add_session( &mut self, id: &str, start: usize, end: usize, channel: &str, summary: &str, ) -> Result<()>

Source

fn get_session_summary(&self, session_id: &str) -> Result<Option<String>>

Implementors§