Memory

Updated on May 15, 2026

Our philosophy

We differentiate ourselves by layering several kinds of smart retrieval—style, files, and memories—alongside your full account customization. Instead of one bland memory bucket, you get Adaptive Retrieval-Augmented Generation Memory plus toggleable foreground tools: tone and style from your past chats, relevant excerpts from your uploaded files, and the memories that matter for what you just said. Combined with your account settings and preferences, that stack shapes every response. It's how we make the chat feel like it actually knows you.

Overview

Memory is how the chat remembers who you are and what you care about across conversations. Without it, every chat would feel like talking to someone who has never met you. With it, the assistant can recall your preferences, work context, and the details you've chosen to store so you don't have to repeat yourself.

What we have today is Adaptive Retrieval-Augmented Generation Memory. Instead of pasting a full memory list into every prompt, the runtime retrieves the most relevant memory chunks for the active scope and injects that smaller memory context into the chat.

Each scope has an umbrella memory toggle. In a project, that main project-memory toggle controls whether project memory participates at all. Under that umbrella sit two foreground tool toggles: Adaptive Memory: Read and Adaptive Memory: Write.

Those foreground tools give stronger models much richer access to information, similar to coding agents. Read tools can search memories, files, and chats in scope. Write tools can create, update, add notes to, or delete memories in scope. Because the model may take extra tool rounds and work with more retrieved context, usage can be higher when these tools are enabled.

The live system is tier-based and RAG-first: memories can be up to 200 words each, and caps are per scope by plan - 15 on Explorer, 30 on Builder, 75 on Studio, 100 on Aurora, and 200 on Pro. Global, project, and persona layers stay distinct, and the older Background Memory Agent still appears in legacy docs/settings as historical context only.

Adaptive Retrieval-Augmented Generation Memory

Adaptive Retrieval-Augmented Generation Memory is the current memory runtime. The chat embeds recent conversation context, retrieves the most relevant memory chunks for the active scope, and injects that smaller memory context into the prompt instead of stuffing the full memory list every turn.

This keeps memory useful at larger scale. Memories can be up to 200 words each, caps vary by plan, and retrieval counts are configurable in the backend instead of hard-coded in the docs. New accounts are created with this mode enabled.

Global and project scopes stay separate. Persona instructions stay separate too, and persona memories are handled through persona-scoped tools rather than being merged into the user memory buckets.

Foreground Model Reads and Writes

Foreground model reads and writes are the tool layer that sits underneath the main memory toggle for a scope. In a project, first turn project memory on. Once that umbrella toggle is on, Adaptive Memory: Read and Adaptive Memory: Write can be enabled underneath it as separate foreground tools.

Adaptive Memory: Read lets the model proactively search memories, files, and chats inside the active scope when it needs more grounding. Adaptive Memory: Write lets it create, update, add notes to, or delete memories in that same scope while the conversation is happening.

This gives smarter models far more access to relevant information, similar to how coding agents iteratively inspect context before acting. The tradeoff is usage: these tools can trigger extra retrieval and extra tool rounds, so chats may consume more usage than a plain response that never reaches for those tools.

Background Memory Agent (depreciated)

The Background Memory Agent (depreciated) is the older background path. It was designed to run beside the chat, decide whether anything should be remembered, and then create/update/delete memories without requiring an in-turn tool call.

We are on Adaptive Retrieval-Augmented Generation Memory plus foreground tools now. In today's runtime, the primary documented path is explicit foreground memory reads and writes during the chat itself: read tools search memories/files/chats in scope, and write tools create/update/delete memories when the write toggle is enabled.

The current control model is split across scope memory toggles plus foreground Adaptive Memory: Read and Adaptive Memory: Write. The legacy background-agent toggle belongs to the older path and should be read as compatibility/legacy context, not as the main system to reason about.

Keep this section for legacy context only. If you are explaining just4o.chat as it works today, lead with Adaptive Retrieval-Augmented Generation Memory and foreground model reads/writes, and treat the Background Memory Agent (depreciated) as the older model.