Specialized-Agent Personal Memory
Technical contract and phased rollout for isolated durable memory owned by specialized agents.
Specialized agents have a durable personal notebook that is separate from shared company, room, conversation, and owner memory. The notebook is identified by the Memory v2 audience tuple audience_kind='agent' plus audience_key=<specialized-agent-id>. Its legacy projection uses agent_memories.memory_scope='agent', private visibility, and metadata.specializedAgentId for auditability.
P1: namespace, tagging, and scoped tools
P1 ships the invisible storage and isolation foundation:
- enabled specialist runs write extracted and explicit memories to their own
agentaudience, including room and channel runs memory_searchandcontext_searchacceptscope="personal"|"shared"|"all";memory_storeacceptsscope="personal"|"shared"- specialist search defaults to
all, specialist storage defaults topersonal, and main-agent behavior remains shared - personal access is always resolved from the active runtime envelope; callers cannot supply another specialist id
- main bootstrap, Learning prompt injection, Wiki and Dreaming inputs, and Knowledge Graph projection exclude personal memory
personal_memory_enabledis stored and forwarded with the specialist runtime envelope; there is no P1 settings UI
Planned phases
- P2 — prompt injection: selectively inject the current specialist's personal notebook into its prompt/bootstrap context.
- P3 — promotion and Dreaming: define reviewed promotion from personal memory into shared memory and specialist-aware consolidation policies.
- P4 — UI: expose management controls, notebook inspection, audit views, and operator-facing enable/disable settings.
P1 deliberately does not seed notebooks, inject personal facts automatically, promote personal facts into shared knowledge, or change Apple clients.
