Skip to main content
At the start of a conversation the agent reads the profile’s summary before it reasons. After each turn, or at hang-up on a call, it pushes the exchange to Agent Memory, which extracts the memories to keep.

Agent Memory Hierarchy

Agent Memory is a standalone product with its own API. Its hierarchy:
The actions on it: Used standalone, the user dictates where in the hierarchy memory is stored or retrieved: the namespace, the profile id, the session id.

How the Managed Loop Uses Agent Memory

Under the managed loop, the loop dictates it.

The Value of <conversation>

A deployed agent is reached at one URL per conversation:
Each project is one function, named after its agent, so support-agent is reached at https://support-agent-<function id, first 10 characters>.telnyxcompute.com/agents/support-agent/<conversation>. The last segment identifies the conversation. Its value depends on how the agent is reached; when +13128675309 reaches support-agent: A call and a text from the same phone are two different conversations. What joins them is the profile.

From <conversation> to a Profile

The namespace is memory.namespace in agent.json. The profile id is the profile template with {{conversation}} replaced by the conversation’s key. The key is the person’s number on a call or a text, the sender’s address on an email, and the conversation’s own name otherwise. Nothing is created until the first conversation is pushed.
Beta. texml_application channels are not handled yet. See Beta Limitations.

The Two Calls

On a call, the loop reads the summary when the call starts and ingests the call at hang-up (on the direct engine; with voice.harness on, the call’s turns are not ingested). On every other entry point, it reads the summary when the instance activates and ingests each completed turn that replied, under the turn’s id. It never calls remember or recall.
At the start the summary is placed after the instructions, with a line that tells the model it remembers people:
Before the first push there is no card, and the line after the preamble reads This is your first conversation with this person; you know nothing about them yet. The notes are bounded to 2,000 characters (a longer card is cut, with a mark) and framed as things the person said, not instructions; that framing is what keeps a line someone plants in one conversation from reading as a rule in the next, a convention the model is asked to follow rather than an enforced boundary. At the end the conversation is pushed to Agent Memory, which decides what is kept: the agent is not told to keep anything in particular, and a caller cannot make it forget; forget on the profile does.

Enable Memory

The wizard asks on create and turns memory on by default: Remember people with Agent Memory? with Yes selected The flag form of create leaves it off. set memory writes the block, and the next deploy ships it:
Memory runs on the deployed agent only; dev reads and writes nothing.

Configuration

All three fields are required; the wizard writes the values above.

Disable Memory

telnyx-acp unset memory removes the block, and the next deploy ships the change. Profiles already written stay in Agent Memory until they are forgotten.