What it recalls as you type
What rides along with every message before it reaches the model, which agent's memory it comes from, and the tools the agent has to ask for more.
Every message you send takes a detour before it reaches the model. Semantix looks at what you wrote, finds what it already knows that bears on it, and sends both. You don't trigger this and you don't see it happen — the reply simply arrives already knowing things.
All of it runs whenever Semantix Memory is on in Privacy and Local only is off. There are no per-reflex switches to manage: memory on means every reflex runs; memory off means none of them do.
What rides along#
Who the agent is. Ahead of everything else, the agent's name and its standing orders — a short list of rules about its own conduct that it has pinned for itself. These aren't cued by your message; they ride every turn because they're constitutive, not content. The agent can add to the list and drop from it, and the list is capped, so a full door forces a choice.
Prompt recall. The main one. It reads the message you just typed and looks for anything related in the agent's memory. This is what makes the agent open a conversation already knowing that you use pnpm, that the staging box is the one with the odd DNS, or that you decided against that library in March. You ask a question; the answer arrives with the context attached.
Self-recall (the mirror). Looks at the agent's own last reply rather than your message. It earns its place on short prompts: when you write "yes, do that" or "why?", there is almost nothing in your message to search on — but there is plenty in what the agent just said. This searches that instead, so a two-word reply still gets context.
Note
Because the mirror searches text the agent partly wrote from memory, it can hand back something the agent itself just said. Treat what it surfaces as an association, not a confirmation.
On the first message of a conversation, two more things: the hand-off note the previous session wrote — with its clock, its session number, and a frame of the sessions before it — and whatever the project's other agents left on the whiteboard. Both stay in front of the model for the whole session.
Time is not memory. The clock, the session number and the gap since your last message ride with every turn whether memory is on or off. A model with no clock has no idea whether your last exchange was two minutes or two weeks ago; with this, a long silence is visible to it as a long silence.
Which agent it talks to#
Memory belongs to an agent, and a conversation talks to one agent at a time. By default that's the project's default agent — the one the project was set up with — and that needs no thought.
When you want a different one, the model picker in the composer toolbar has an Agent row at the
very top of its menu, above the search. It lists this project's roster: the default first, as
<name> — project default, then every other agent allowed into the project. It does not list every
agent you own — an agent has to be allowed into a project before a conversation there can talk to
it, and that's done in the Project Manager.
The choice is separate from the model — the same model can be pointed at a different agent — and it applies both ways: the agent you pick is whose memory gets recalled as you type, and it's also whose memory the walker writes to.
The row is hidden entirely when memory is off.
Note
The pick belongs to the conversation you're in, not to the project — so pointing one conversation at another agent leaves your other conversations alone. Leaving it on the default means the conversation follows the project if you ever change which agent is the default.
→ The Project Manager — making agents, and allowing them in
Asking instead of waiting#
The reflexes are the automatic path. You can also just ask, in the conversation, and the agent will do it deliberately — it has tools for it, and you see each call as a card:
- "what do you know about how we handle auth here?" —
recall_memory - "remember that the staging DB is read-only" —
carve_memory - "what did we do last Tuesday?" —
search_conversations, andread_conversation_messageto read a hit in full - "from now on, always run the tests before you say done" —
pin_standing_order, andunpin_standing_orderto take one back - "leave a note for the other agents" —
write_whiteboard
None of these ask permission; they only exist while memory is on. With it off, the agent is never
offered them, and if it tries one anyway it gets back memory is disabled by your settings — the memory tools are unavailable rather than silently reaching for your memory.