feat: per-user auto-memory with ResponseContext
Three memory channels: hidden tool (sol.memory.set/get in scripts), pre-response injection (relevant memories loaded into system prompt), and post-response extraction (ministral-3b extracts facts after each response). User isolation enforced at Rust level — user_id derived from Matrix sender, never from script arguments. New modules: context (ResponseContext), memory (schema, store, extractor). ResponseContext threaded through responder → tools → script runtime. OpenSearch index sol_user_memory created on startup alongside archive.
This commit is contained in:
@@ -25,4 +25,11 @@ regex = "1"
|
||||
anyhow = "1"
|
||||
chrono = { version = "0.4", features = ["serde"] }
|
||||
url = "2"
|
||||
ruma = { version = "0.12", features = ["events", "client"] }
|
||||
ruma = { version = "0.12", features = ["events", "client", "markdown"] }
|
||||
libsqlite3-sys = { version = "0.30", features = ["bundled"] }
|
||||
deno_core = "0.393"
|
||||
deno_ast = { version = "0.53", features = ["transpiling"] }
|
||||
deno_error = "0.7"
|
||||
tempfile = "3"
|
||||
reqwest = { version = "0.12", default-features = false, features = ["rustls-tls"] }
|
||||
uuid = { version = "1", features = ["v4"] }
|
||||
|
||||
Reference in New Issue
Block a user