16 lines
399 B
Rust
16 lines
399 B
Rust
use crate::types::{AgentId, SkillId, MemoryId, Result};
|
|
|
|
pub trait Agent: Send + Sync {
|
|
fn id(&self) -> AgentId;
|
|
fn name(&self) -> &str;
|
|
}
|
|
|
|
pub trait Skill: Send + Sync {
|
|
fn id(&self) -> &SkillId;
|
|
fn name(&self) -> &str;
|
|
}
|
|
|
|
pub trait MemoryStore: Send + Sync {
|
|
fn store(&self, content: &str) -> Result<MemoryId>;
|
|
fn retrieve(&self, id: &MemoryId) -> Result<Option<String>>;
|
|
} |