Shared conversation memory vs agent-private memory in Mastra

Hi I have a question about memory design in Mastra.

I'm building a multi-agent group chat:

multiple agents in the same conversation

agents should share the same conversation context

each agent should still have its own private state

From my experiments:

Memory seems to be agent-scoped

Mastra only supports one storage backend

once storage is set on Mastra, agents can't have separate storage

using a shared memory leads to identity confusion (agents repeating each other)

My questions:

Is Mastra Memory intended more for agent state rather than conversation history?

Is there a recommended way to support shared conversation context + agent-private memory?

For group chat, is it expected to manage conversation storage outside Mastra and use Mastra mainly as an agent runner?

Thanks!
Was this page helpful?