21 lines
686 B
Go
21 lines
686 B
Go
package memory
|
|
|
|
import "context"
|
|
|
|
// Store is the interface for persistent memory operations.
|
|
// Defined in the pure package; implemented by shell/memory.
|
|
type Store interface {
|
|
// Facts
|
|
SaveFact(ctx context.Context, fact Fact) error
|
|
RecallFacts(ctx context.Context, agentID, subject string, key *string) ([]Fact, error)
|
|
DeleteFacts(ctx context.Context, agentID, subject string, key *string) error
|
|
|
|
// Message history
|
|
SaveMessage(ctx context.Context, msg HistoryMessage) error
|
|
LoadMessages(ctx context.Context, agentID, roomID string, limit int) ([]HistoryMessage, error)
|
|
DeleteMessages(ctx context.Context, agentID string, roomID *string) error
|
|
|
|
// Lifecycle
|
|
Close() error
|
|
}
|