Mitosis Labs

Memory

Writing to a memory

cortex_remember and cortex_ingest_conversation.

Memory is not read-only. An agent that reaches a conclusion worth keeping should put it back, so the next session, in any client, can retrieve it.

Both write tools need the memory:write scope.

cortex_remember

Stores one durable fact. The text should be a single self-contained statement, readable years later without the surrounding conversation.

{
  "text": "Pricing moved to $19.99/seat for Solo in July 2026.",
  "kind": "decision",
  "confidence": 0.9,
  "source_universal_ids": ["gmail_messages:18f2c...", "drive_files:1kZ..."]
}
ArgumentTypeNotes
textstringRequired. The fact itself, as one self-contained statement.
kindstringe.g. decision, observation, task-outcome.
confidencenumber0..1. Weights the provenance edges.
source_universal_idsstring[]Universal ids from a previous cortex_ask that this fact came from.

What is worth remembering

Write facts that outlive the session: decisions and their reasons, stable preferences, outcomes, corrections to something previously believed.

Skip the transient: what the user asked five minutes ago, anything already in a connected source (it is in the graph already), and anything you inferred with low confidence and did not verify. A memory full of restated context retrieves worse than a sparse one.

cortex_ingest_conversation

Ingests a whole conversation rather than a single fact, so the exchange itself becomes retrievable. Use it at the end of a substantive session; use cortex_remember for the one-line conclusions that came out of it.

Absent write scope

If a client holds only memory:read, the write tools are not offered. That is the expected state for a read-only integration. Treat it as a signal to surface what you would have stored, rather than as an error to retry.