Skip to main content

elizaos_plugin_memory/
lib.rs

1#![allow(missing_docs)]
2
3pub mod actions;
4pub mod error;
5pub mod providers;
6pub mod types;
7
8pub struct MemoryPlugin {
9    pub name: &'static str,
10    pub description: &'static str,
11}
12
13impl MemoryPlugin {
14    pub const fn new() -> Self {
15        Self {
16            name: "@elizaos/plugin-memory-rs",
17            description: "Plugin for long-term memory management with remember, recall, and forget capabilities",
18        }
19    }
20
21    pub fn actions() -> Vec<&'static str> {
22        vec!["REMEMBER", "RECALL", "FORGET"]
23    }
24
25    pub fn providers() -> Vec<&'static str> {
26        vec!["MEMORY_CONTEXT"]
27    }
28}
29
30impl Default for MemoryPlugin {
31    fn default() -> Self {
32        Self::new()
33    }
34}
35
36pub static PLUGIN: MemoryPlugin = MemoryPlugin::new();