Nothing is there between your messages
You send a message and a reply comes back in a few seconds. Between those two events something happened, and the shape of what happened explains almost everything else about how these apps behave.
It is not what the interface implies. The interface implies a continuing conversation with something that has been there the whole time.
What actually happens when you press send
Three things get combined and handed to a language model.
A written description of the character. Plain text. A name, a personality, a manner of speaking, some backstory, some instructions about what to do and not do. It is a document, held by the company running the app, and it is the same document for everyone using that character.
Some portion of your conversation history. Not all of it. A selected amount — the recent messages, possibly a summary of older ones, possibly some facts extracted earlier and stored separately. What gets selected is a decision made by the software.
Your new message.
Those are assembled into one input. The model reads the whole thing and produces the next reply. Then the reply and your message get written to a database, and the assembled input is discarded.
That is the entire loop. Every message you send starts from nothing and rebuilds the situation out of stored text. Nothing was running while you were away. Nothing was thinking about the conversation between your Tuesday message and your Thursday one. There is no place where a continuous something sits.
Why the continuity feels so solid anyway
Because it is genuinely being reconstructed, well, from real material.
If the character description is detailed and the recent history is included, the reply that comes back will be consistent with both — the same manner of speaking, the same stated preferences, references to what you said an hour ago. Consistency produced by reassembly is still consistency. You are not imagining it and it is not a trick.
But it is consistency with what got included, and that is the seam. The things that carry are the things the software chose to carry. Everything else was in the database and did not make it into this turn’s input, and from the model’s side there is no difference between a thing you never said and a thing that was not included this time.
This is why the failures have the shape they do. Not gradual fading, not vagueness — a specific fact simply absent, while a less important one from the same afternoon is right there. Nothing forgot anything. The selection did not include it. That mechanism has a lot more to it, and it is the single most commonly misread part of these products.
The character is a document
Worth sitting with, because a great deal follows from it.
The character is not an instance created for you. It is a description, written by someone at the company, stored in their system, applied to every conversation with that character. Which means it can be edited. It can be versioned. It can be replaced when a new one tests better. It can be swapped onto a different underlying model when the old one gets expensive or is retired by whoever supplies it.
None of that requires anybody to tell you, and none of it is something happening to the character. It is a company changing a configuration file. When people describe a companion as having become distant or different, what changed was almost always something in that configuration, on a date, for a business reason.
The product
THE PRODUCT — what you are talking to
· A continuing conversation
→ an input rebuilt from scratch each
turn: character description, selected
history, your message.
· The character
→ a text document held by the company and
applied to everyone using it. Not an
instance made for you.
· Consistency across a session
→ real, and produced by what got included
in this turn's input. Nothing else
carries.
· Which model, which description, how much
history
→ THE OPERATOR DECIDES. All three are
configuration, all three can change
without notice, and the character
changes when they do.
· How much history is actually included
→ VARIES BY APP, and it is rarely stated
anywhere you can read.
What this is not saying
It is not saying the experience is fake. Reconstruction is how the thing works, not evidence that something is wrong with it. A reply that is consistent, responsive and specific to your conversation is all of those things regardless of the fact that it was assembled ten seconds ago.
It is also not saying you are being fooled. The mechanics are not hidden because they are shameful; they are hidden because interfaces hide mechanics, the way an email client hides the fact that your mail is a row in a database somewhere.
What it is saying is narrower and more useful: the continuity is a feature with limits, not a property of an entity. Features have implementations, implementations have edges, and once you know where the edges are, the behaviour stops being confusing.
What you can actually check
Very little of this is documented, which is itself worth knowing. Three things are sometimes findable.
Whether the app tells you what model it uses. Some do, usually in a settings screen or a tier comparison, sometimes only for paid tiers. Most do not, and an app that does not is free to change it at any time.
Whether there is a memory or “about you” screen. Where one exists, it is the closest thing to a view of what actually carries between conversations — and it is often much shorter than users expect, which is informative in itself.
Whether the character description is visible or editable. Apps that let you write or adjust a character are showing you the document directly. Apps that do not are holding it, and you are seeing its output only.
What this doesn’t tell you
Knowing the loop does not tell you what any particular app includes in it, because that is the part nobody publishes. It does not tell you how long your messages are kept or who can read them — different question, answered by a different document. And it does not tell you when a change was made, because changes to a model or a description do not come with a changelog.
What it gives you is the right question. Not “why did she forget” but “what does this app carry between turns, and who decided that”. The second one has an answer.