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!
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!