Memory·
the cross-persona SQLite brain: remember, recall, forget — tools/rover_memory.py, 1 tool.
From the module docstring
🧠 SQLite-backed long-term memory for scout.
| tool | does |
|---|---|
rover_memory |
Long-term SQLite memory for scout — remember, recall, update, forget. |
rover_memory·
rover_memory(
action: str = 'list',
title: str = '',
content: str = '',
category: Optional[str] = None,
tags: str = '',
importance: Optional[int] = None,
meta: Optional[Dict[str, Any]] = None,
memory_id: Optional[int] = None,
query: str = '',
limit: int = 10,
) -> Dict[str, Any]
Long-term SQLite memory for scout — remember, recall, update, forget.
Use this to retain knowledge ACROSS sessions: spatial maps of places you've explored, operator preferences, hazards to avoid, persistent goals, observations about people/objects/pets.
Actions
remember : Store a new memory.
required: title (short label), content (the memory body)
optional: category, tags, importance (1-5), meta (dict)
categories: spatial, preference, hazard, fact, goal, person, object, other
recall : Pull memories most relevant to a free-text query.
required: query
optional: category (filter), limit (default 10)
Uses FTS5 if available, falls back to LIKE.
search : Same as recall but doesn't bump access_count.
list : List memories, newest first.
optional: category (filter), limit (default 10)
recent : Most recently created/updated memories.
optional: limit (default 10)
update : Modify an existing memory.
required: memory_id
optional: any of title/content/category/tags/importance/meta
forget : Delete a memory by id.
required: memory_id
stats : Return DB stats (count, by category, FTS status).
Returns
{"status": "success", "content": [{"text": "..."}]} on success;
memory rows are inlined as JSON in the text for the model to read.
Examples
rover_memory(action="remember",
category="spatial",
title="kitchen entrance",
content="Through the second door on the left from "
"the hallway. Has a step-down of ~5cm.",
tags="indoor,kitchen,landmark",
importance=4,
meta={"approx_lat": 37.78, "approx_lng": -122.41})
rover_memory(action="recall", query="where is the kitchen?")
rover_memory(action="forget", memory_id=42)
source: tools/rover_memory.py:149