Skip to main content
Save, update, or delete memories that persist across sessions and across AI agents. This is the unified write tool — it handles create, update, and delete operations based on which parameters you provide. Memories saved here are accessible from any AI agent the user connects to — Claude, GPT, Cursor, Codex, Gemini.
v0.7.0: remember replaces the previous remember + update_memory + forget tools. Mode is auto-detected from params.

Modes

Create (default)

Provide entity_name + entity_kind + layer + content:

Update

Provide memory_id + fields to change:
Preserves memory_id and session_file_edits links. Preferred over delete + create.

Delete

Set forget: true + memory_id:
Caveat-layer and pinned memories (importance >= 0.9) are protected and cannot be deleted.

Parameters

Create mode (required)

entity_name
string
required
Name of the entity this memory is about (e.g. “MyProject”, “Supabase”, “Alice”).
entity_kind
string
required
One of: person, company, project, concept, file, other.
layer
string
required
Memory layer. One of: goal, context, emotion, implementation, caveat, learning.Common aliases are accepted:
content
string
required
The memory content. Plain text or JSON with structured axes (title, altitude, type, state, what, why, affects, next_action).

Optional (all modes)

importance
number
0.0 to 1.0. Set to 0.9 or higher to pin a memory — pinned memories are protected from auto-forgetting even outside the caveat layer. Default: auto-assigned based on layer.
thread_id
string
Optional thread ID to group related memories (e.g. a session ID or decision chain). Enables decision -> implementation -> outcome tracing.
force
boolean
default:"false"
Bypass the paste-back quality check. Set true only when you are sure the content is original user or agent thought, not pasted CI logs or assistant output.

Update mode

memory_id
number
The memory.id to update. Get this from a prior recall response. When provided without forget: true, enters update mode.

Delete mode

forget
boolean
default:"false"
Set true with a memory_id to delete that memory.

Behavior

  1. Entity resolution: 3-tier matching — canonical_key exact -> normalized_name -> case-insensitive name -> insert new entity
  2. Quality check: Rejects pasted CI logs, assistant output, and other non-original content (bypass with force: true)
  3. Auto-structuring: Plain text is wrapped into structured JSON with inferred altitude, type, and state classifications
  4. Pinning: Memories with importance >= 0.9 get protected = 1, preventing auto-forgetting
  5. Events: Records a memory_stored event for momentum tracking
Caveat-layer memories are always protected regardless of importance score. They survive consolidation and auto-forgetting indefinitely.

Migration from pre-v0.7