Memory
What Bash remembers about each user: read it, search it, add to it, forget it.
POST/v1/memoryTell Bash a fact once, for example 'prefers window seats', for one user (user_id) or the company's own Bash.
Request4 fields
Headers
Idempotency-KeystringSend the same key to retry this call safely for 24 hours.
- Type
string
Body
user_idstringWhose memory, by your id for them. Absent: your company's own Bash's.
- Example
traveller-42
textstringrequiredThe fact, in plain words: at most 1,000 characters.
- Limits
- 1 to 1000 characters.
- Example
Prefers a window seat.
kind"identity" | "relationship" | "commitment" | "preference" | "project_state" | "other"What kind of fact it is: who they are (identity), who they know (relationship), what they promised (commitment), what they like (preference), where a piece of work stands (project_state), or other.
- Default
other
Answers 2015 fields
idstringThe memory (mem_...).
- Type
string
textstringWhat Bash remembers, in plain words.
- Example
Prefers a window seat.
kindstringWhat kind of fact it is, such as preference or identity.
- Type
string
sourcestringHow Bash learned it: user_direct (you or your user said so), tool_observed (seen in an app), upload, screen, or agent_inferred (worked out from the conversation).
- Type
string
observed_atstringWhen Bash learned it, as an ISO 8601 time.
- Type
string
await vestra.user('traveller-42').memory.add('Prefers a window seat.');vestra.user("traveller-42").memory.add("Prefers a window seat.")vestra memory add "Prefers a window seat." --user traveller-42# Add a fact. Tell Bash something once, and it remembers it.curl "$VESTRA_BASE_URL/v1/memory" \ -H "Authorization: Bearer $VESTRA_API_KEY" \ -H "Content-Type: application/json" \ -d '{ "user_id": "traveller-42", "text": "Prefers a window seat, and never a red-eye." }' # Search what Bash remembers. Ask a question in plain words.curl "$VESTRA_BASE_URL/v1/memory/search?user_id=traveller-42&q=Which%20seat%20does%20she%20like" \ -H "Authorization: Bearer $VESTRA_API_KEY" # List and forget memories. Read the profile and every memory, newest first. Then forget one, or everything.curl "$VESTRA_BASE_URL/v1/memory?user_id=traveller-42" \ -H "Authorization: Bearer $VESTRA_API_KEY" curl -X DELETE "$VESTRA_BASE_URL/v1/memory/mem_4ka?user_id=traveller-42" \ -H "Authorization: Bearer $VESTRA_API_KEY" curl -X DELETE "$VESTRA_BASE_URL/v1/memory?user_id=traveller-42" \ -H "Authorization: Bearer $VESTRA_API_KEY"{ "method": "tools/call", "params": { "name": "memory_search", "arguments": { "user": "traveller-42", "q": "Which seat does she like?" } }}