Chat Memory
Last updated:
Chat memory stores small text chunks that agents can recall across conversations. It helps an agent carry useful context without rereading every old thread.
Note
Memory chunk means a stored piece of text associated with an agent and conversation. Oscova can search these chunks when the agent has memory enabled.
Requirements
Memory needs two pieces:
- An embedding provider in Model Providers.
- Enable Memory on the agent.
Note
An embedding provider turns text into numeric vectors so similar memories can be found by meaning, not only exact words.
If either piece is missing, chat can still work, but memory recall will not be available. Compaction is separate: it summarizes the current thread, while memory stores reusable facts for later sessions.
Agent-level Local only and global Offline mode also apply to memory. If memory search or indexing would need a cloud embedding provider, Oscova blocks that embedding call and reports the local-only failure instead of sending the text out.
How memory is written and searched
Oscova indexes new conversation messages in a scheduled Vector Indexing task that normally runs every 15 minutes. New chunks therefore may not appear immediately after a reply. Each run adds only conversation content that has not already been indexed.
Indexing splits the conversation into small text chunks and associates them with the user, agent, thread, time, and chunk order. Memory search compares a new question with chunks in that user's store. Thread lookup retrieves a specific conversation's chunks in order.
Note
A vector database stores text together with embeddings so similar meaning can be found even when the words are not identical.
When a cloud embedding provider is used for indexing or search, Oscova records embedding egress audit entries. Local embedding providers do not create cloud egress entries.
Browse stored memory
Open Chat Memory from the profile menu. The dialog loads entries only when opened, then shows up to 50 rows per page.
Use All Agents or All Threads to filter. Changing a filter resets to page 1. Refresh reloads the metadata and current page.
Each row shows timestamp, agent, thread, chunk index, and a content preview. Expand a row to read the full stored text. Timestamps use your local timezone.
What the browser does not do
The memory browser is read-only. It does not currently expose manual edit, bulk delete, or export from the dialog. Use environment backup to preserve or migrate memory with the rest of the user environment.
Turning Enable Memory off stops that agent from indexing, searching, and using memory, but it does not erase chunks already stored. Deleting a thread removes its indexed chat-memory chunks. If no chunks exist, the dialog simply shows no matching entries.
Memory tools agents may use
When memory is enabled, the agent can use memory tools during a run:
memory_searchsearches past conversation memory and returns matching chunks with local-time metadata and relevance scores.memory_getretrieves stored conversation memory for a specific thread.memory_savesaves a note todailymemory orlongtermmemory. Long-term saves can include an optional lowercase kebab-case topic slug.memory_readreadslongterm,today,yesterday, ayyyy-MM-dddaily log, or a topic slug.memory_forgetremoves an exact text entry from long-term memory.
Chat-memory chunks and long-term or daily memory files are related but not identical. Chat memory is built from conversation indexing for semantic recall. Daily and long-term memory are explicit notes the agent saves and reads through memory tools.
Library Search is also separate. memory_search looks for relevant past conversation chunks, while library_search looks only in indexed files under the authorized Library workspace. Oscova does not automatically inject Library passages into every request. The agent calls Library Search when the question needs document evidence.
What to store
Ask agents to remember durable preferences, naming conventions, recurring project facts, and decisions that should survive a chat. Avoid storing secrets, one-time instructions, or large source files. Use workspaces or files for reference documents.
Troubleshooting recall
- Confirm the selected agent has Enable Memory on.
- Confirm an embedding provider is configured and healthy.
- If the agent is local-only, confirm the embedding provider is local or has endpoint scope set correctly.
- Wait for the next Vector Indexing run, then refresh Chat Memory.
- Rephrase the user question with the same project or topic terms used in memory.
- Check the egress audit if you need to confirm whether embedding search or indexing used a cloud provider.