Private bucket
Each agent keeps its own scratch space — drafts, half-formed notes, per-task context — invisible to the others until you say so.
Run a lead agent, its subagents, and tools like Claude Code, Cursor, and Codex on one shared memory. Each keeps what's private; the team shares what matters. No more agents talking past each other.
Draft outline v3
Scratch: API rate limit?
Launch date is Oct 9
Pricing model: usage-based
Conflict on “launch date” resolved — newest verified fact won.
Run more than one agent and they each learn in their own silo. Your researcher discovers something; your writer never hears about it. They repeat work, contradict each other, and forget what the team already knew.
ULTRAMEMORY gives every agent one place to write to and read from. The moment one agent learns something worth sharing, every other agent can recall it.
Half-formed note: try vendor B
Tried to write a team fact — blocked: this agent isn't allowed to promote
Unverified claim from a web page
Customer is on the Enterprise plan
Ship target: October 9 (current)
Two agents wrote different ship dates. The newer, verified fact (Oct 9) won; the older one was superseded and logged.
Private to one agent on the left. Promoted to the shared team memory on the right. When two agents disagree, the conflict is resolved and logged. You set the rules for what crosses over.
Two buckets, one memory. Nothing crosses over by accident.
Each agent keeps its own scratch space — drafts, half-formed notes, per-task context — invisible to the others until you say so.
Team truth everyone reads: decided facts, project state, preferences. One source everyone trusts.
Nothing is shared by accident — promotion is a deliberate, governed step.
A parent agent can hand a subagent or tool exactly the access it needs — no more. Spin up a subagent and it inherits the right slice of memory automatically; when its job's done, that access expires.
Every agent's reach is scoped and inherited — and you can see the whole family tree.
The wedge connects to the rest of the promise, so a shared memory stays accurate, safe, and transparent.
Always the right answer — contradictions get resolved, current truth wins.
Learn more →Planted or bad memories are caught at the promotion gate.
Learn more →See what every agent remembers, and why.
Learn more →Claude Code, Cursor, Codex, Cline, and any MCP client can join the same shared memory — heterogeneous tools, one brain.
# Claude Code writes a team fact
um.remember(memory_id="team:acme", text="Ship target is Oct 9")
// Cursor recalls the same memory
await um.recall({ memoryId: "team:acme", query: "ship date" })Free to start, pay for what you use. Drop it into any agent or tool in minutes.