Skip to main content

Memory

Trait Memory 

Source
pub trait Memory: Send + Sync {
Show 28 methods // Required methods fn repo_map(&self, root: &Path) -> RepoMap; fn identity(&self, agent: &str) -> Option<Identity>; fn save_identity(&self, agent: &str, identity: &Identity) -> Result<()>; fn task(&self, run: &RunId) -> Option<TaskMem>; fn save_task(&self, task: &TaskMem) -> Result<()>; fn shared_signals(&self) -> Vec<SharedSignal>; fn shared_docs(&self) -> Vec<WorkingDoc>; fn post_signal(&self, signal: SharedSignal) -> Result<()>; fn upsert_doc(&self, doc: WorkingDoc) -> Result<()>; fn remember(&self, fact: Fact) -> Result<()>; fn recall(&self, q: &str, k: usize) -> Vec<Fact>; fn all_facts(&self) -> Vec<Fact>; fn forget(&self, id: &str) -> Result<()>; fn cache_discovered_models( &self, provider_id: &str, models: &[String], ) -> Result<()>; fn get_discovered_models(&self, provider_id: &str) -> Vec<String>; // Provided methods fn memory_doc(&self, _kind: MemoryDocKind) -> Option<MemoryDoc> { ... } fn upsert_memory_doc( &self, _kind: MemoryDocKind, _content: &str, ) -> Result<()> { ... } fn remove_memory_doc(&self, _kind: MemoryDocKind) -> Result<()> { ... } fn memory_stats(&self) -> MemoryStats { ... } fn consolidate_memory(&self) -> Result<()> { ... } fn upsert_graph_node(&self, _node: GraphNode) -> Result<()> { ... } fn upsert_graph_edge(&self, _edge: GraphEdge) -> Result<()> { ... } fn graph_node(&self, _id: &str) -> Option<GraphNode> { ... } fn graph_neighbors( &self, _id: &str, _direction: GraphDirection, _limit: usize, ) -> Vec<(GraphEdge, GraphNode)> { ... } fn search_graph(&self, _query: &str, _limit: usize) -> Vec<GraphNode> { ... } fn graph_export(&self) -> KnowledgeGraph { ... } fn delete_graph_node(&self, _id: &str) -> Result<()> { ... } fn delete_graph_edge(&self, _id: &str) -> Result<()> { ... }
}

Required Methods§

Source

fn repo_map(&self, root: &Path) -> RepoMap

Source

fn identity(&self, agent: &str) -> Option<Identity>

Source

fn save_identity(&self, agent: &str, identity: &Identity) -> Result<()>

Source

fn task(&self, run: &RunId) -> Option<TaskMem>

Source

fn save_task(&self, task: &TaskMem) -> Result<()>

Source

fn shared_signals(&self) -> Vec<SharedSignal>

Source

fn shared_docs(&self) -> Vec<WorkingDoc>

Source

fn post_signal(&self, signal: SharedSignal) -> Result<()>

Source

fn upsert_doc(&self, doc: WorkingDoc) -> Result<()>

Source

fn remember(&self, fact: Fact) -> Result<()>

Source

fn recall(&self, q: &str, k: usize) -> Vec<Fact>

Source

fn all_facts(&self) -> Vec<Fact>

Source

fn forget(&self, id: &str) -> Result<()>

Source

fn cache_discovered_models( &self, provider_id: &str, models: &[String], ) -> Result<()>

Source

fn get_discovered_models(&self, provider_id: &str) -> Vec<String>

Provided Methods§

Source

fn memory_doc(&self, _kind: MemoryDocKind) -> Option<MemoryDoc>

Source

fn upsert_memory_doc(&self, _kind: MemoryDocKind, _content: &str) -> Result<()>

Source

fn remove_memory_doc(&self, _kind: MemoryDocKind) -> Result<()>

Source

fn memory_stats(&self) -> MemoryStats

Source

fn consolidate_memory(&self) -> Result<()>

Source

fn upsert_graph_node(&self, _node: GraphNode) -> Result<()>

Source

fn upsert_graph_edge(&self, _edge: GraphEdge) -> Result<()>

Source

fn graph_node(&self, _id: &str) -> Option<GraphNode>

Source

fn graph_neighbors( &self, _id: &str, _direction: GraphDirection, _limit: usize, ) -> Vec<(GraphEdge, GraphNode)>

Source

fn search_graph(&self, _query: &str, _limit: usize) -> Vec<GraphNode>

Source

fn graph_export(&self) -> KnowledgeGraph

Source

fn delete_graph_node(&self, _id: &str) -> Result<()>

Source

fn delete_graph_edge(&self, _id: &str) -> Result<()>

Dyn Compatibility§

This trait is dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety".

Implementors§