Summary
NLWeb's Memory pre-check (AskAgent/python/core/query_analysis/memory.py) can detect when a user asks to be remembered, but it only emits a transient remember message. There is no durable per-user storage, and stored memories are not injected into later query context.
Expected behavior
- When the Memory pre-check detects a remember request, persist the memory for the user (
oauth_id or user_id).
- On later queries, prepend stored memories to
prev_queries as [memory] {text}.
- Re-enable the Memory pre-check in handler preparation when
memory_enabled is true.
- Expose REST endpoints to list and delete user memories:
GET /user/memory?user_id=...
DELETE /user/memory/{memory_id}?user_id=...
- Support
memory_mock=true for offline/testing without LLM calls.
Context
docs/nlweb-memory.md describes long-term memory as a hook, not a full implementation.
memory.py line 43: # this is where we would write to a database
- Memory step is commented out in
baseHandler.prepare().
Commit reference
b423f15d9aeaa023ce75993ac9deed2354597043
Summary
NLWeb's Memory pre-check (
AskAgent/python/core/query_analysis/memory.py) can detect when a user asks to be remembered, but it only emits a transientremembermessage. There is no durable per-user storage, and stored memories are not injected into later query context.Expected behavior
oauth_idoruser_id).prev_queriesas[memory] {text}.memory_enabledis true.GET /user/memory?user_id=...DELETE /user/memory/{memory_id}?user_id=...memory_mock=truefor offline/testing without LLM calls.Context
docs/nlweb-memory.mddescribes long-term memory as a hook, not a full implementation.memory.pyline 43:# this is where we would write to a databasebaseHandler.prepare().Commit reference
b423f15d9aeaa023ce75993ac9deed2354597043