Skip to main content
Agent memory is what an agent knows about you and your accounts across conversations. Without it, every chat starts from zero and you re-explain the same client details, targets, and preferences every time. Memory fills up in two ways:
  • Learned: the agent saves durable facts as you work, without being asked
  • Added by you: you write context yourself from the Memory page
Automatically learned entries from a signed-in conversation start in My Memory, which is private to you. When you add context manually, you choose My Memory or Team Memory before saving. You can also move a complete private file into Team Memory later. Memory learned in a channel conversation with no linked Markifact user is saved to Team Memory so it remains available.

Memory Vs. Instructions Vs. Skills

These three layers are easy to confuse. The short version: instructions are how the agent behaves, memory is what it knows, skills are what it knows how to do. Worked examples: The rule of thumb: if it starts with “you are” or “always respond”, it is an instruction. If it is a fact about your business or clients, it is memory. If it is a repeatable procedure, it is a skill.
Instructions are set per agent in Agent Settings. Memory lives on the agent’s Memory page. Skills live on the agent’s Skills page.

How Memory Works

Memory is stored as small markdown documents, each with a path and a one-line description. At the start of every conversation the agent receives only the index: the path and description of each document, not the content. When a description looks relevant to the task, the agent opens that document and reads it.
The my/ and team/ prefixes are agent-facing scopes rather than part of the stored filename. Each path has exactly one scope, so a path such as my/team/clients/acme.md is invalid. This on-demand loading is what keeps memory cheap. Ten documents or a hundred, the always-on cost stays roughly the same, because only the one-line descriptions are always present. It also means the description does the work. A description that says when to read the document is what makes the agent actually open it at the right moment.

What The Agent Saves On Its Own

The agent files durable facts as they come up in conversation, without you asking:
  • Standing rules and guardrails
  • Business constraints that outlive campaigns, such as target CPA or ROAS, budget authority, minimum test duration
  • Naming and account structure conventions
  • Reporting preferences: cadence, format, which metrics you care about
  • Durable client facts, including who signs off on work
  • Corrections to its own behavior
  • Your stated plans, including undecided ones

What It Never Saves

This matters as much as what it does save:
  • Data returned by an operation. Metrics, spend, balances, audience sizes, campaign names and IDs. These go stale within a day, and stale numbers in memory are worse than no numbers. Your decision about a metric is memory (“we capped CPA at 45");themetricitselfisnot("CPAis45"); the metric itself is not ("CPA is 42”).
  • Its own analysis or recommendations. If it proposed something and you approved, it saves your decision, not the reasoning behind it.
  • One-off instructions. “Exclude mobile placements on this campaign” is a task. “We never run mobile placements” is memory. When the scope is unclear, it does not save, because a wrongly remembered rule silently changes every future campaign.
  • Sensitive data. Credentials, payment details, customer lists, lead form submissions, and personal data are never written to memory.
  • Anything that duplicates a Markifact setting, such as your approval mode or model choice. Settings are the source of truth and change without the agent knowing.
Tell the agent a durable fact once and it is saved. You do not need to repeat it or ask it to remember.

Adding Context Yourself

Use Add Context on the Memory page when you want the agent to know something before it ever comes up in conversation. Choose where to save it before adding the entry:
  • My Memory keeps it private to your conversations with this agent.
  • Team Memory makes it available in every teammate’s conversations with this agent.
Each entry has three fields:
  • Title: what it is, shown in your list
  • Description: what it covers and when the agent should use it
  • Content: the actual knowledge
Context you add is authoritative, but it is not frozen. The agent can append relevant non-conflicting facts and keep clearly outdated details current in either My Memory or Team Memory. It will not silently remove or reverse a rule you wrote; when new information conflicts with one, it asks which should apply. The description is the most important field, because it is the only part the agent always sees. Write it as a trigger. Good:
Campaign naming rules: read before creating or renaming any campaign
Weak:
Some notes about naming

Example Entry

Title: Campaign naming rules Description: Campaign naming rules: read before creating or renaming any campaign Content:

My Memory And Team Memory

The Memory page shows both spaces together:
  • My Memory is private to you. Memory learned in a signed-in conversation starts here; manually added context can be saved here when it is personal.
  • Team Memory is shared with every teammate who uses the agent. It is the team’s canonical context for that file.
For signed-in conversations, newly learned memory starts in My Memory. Channel conversations without a linked user save learned memory to Team Memory because there is no private owner. Agents can keep both My Memory and Team Memory current by appending non-conflicting facts or updating clearly outdated information. Paths make the scope explicit to the agent. A personal and Team file can have the same canonical name without hiding one another:
The my/ and team/ prefixes are agent-facing scopes. The underlying filename remains clients/acme.md, and database permissions still determine who can access it.

Move A File To Team Memory

Select Move to Team Memory on a file in My Memory. After confirmation, the file moves from my/ to team/ and becomes available in every teammate’s conversations with that agent. Conflicts are based only on the canonical filename. If Team Memory already has a file with the same path, Markifact asks whether you want to replace it. Replacement overwrites the complete Team file—title, description, and content—with your file. Markifact does not merge, deduplicate, or compare individual facts. When adding context directly, the generated filename must be unique within the selected scope. If the name already exists in My Memory or Team Memory, edit the existing entry or choose a different title. Team Memory cannot be changed back into private memory with a visibility toggle. Once shared, it is team knowledge. The agent can update or append to it, but it cannot delete the complete Team file. Only a team owner can delete a Team Memory entry from its edit dialog.
Memory belongs to the agent. Each agent keeps its own memory, so a reporting agent and a campaign agent do not share what they learn. Conversations remain private per user, as they always have been.

Managing Memory

From the agent’s Memory page you can:
  • See My Memory and Team Memory together without switching tabs
  • See where every entry is scoped by whether it appears under My Memory or Team Memory
  • Open any entry to read it exactly as the agent reads it, no summarising or prettifying
  • Edit entries, including ones the agent learned, if it got something slightly wrong
  • Move a private file to Team Memory when everyone using the agent should know it
  • Choose My Memory or Team Memory when adding context manually
  • Turn an entry off without deleting it, when you want to pause it temporarily
  • Delete an entry from its edit dialog; you can delete your private entries, while only team owners can delete complete Team entries
  • Export everything as a single markdown file
You can also manage memory in conversation. Ask the agent to forget a specific fact and it removes that line. Ask it to remember something and it files it.
If the agent ever seems to be working from something wrong or out of date, open the Memory page. Everything it knows is visible there, in plain text.

Practical Rule Of Thumb

Let the agent build memory on its own, and add context yourself for the things it has no way to learn yet: a new client’s constraints, your naming conventions, a reporting format you have never asked for out loud. If the agent is not using something you added, check the description. It should say when to read the entry, not just what it contains.

AI Agents

Learn how agents work in Markifact and where memory fits into the agent model.

Agent Skills

Reusable processes and playbooks, the layer for what an agent knows how to do.