memory_upsert
Write or update an Aelios long-term memory immediately by fact_key: existing keys are overwritten; new keys create memories, and authored facts stay protected.
Instructions
Write a refined memory immediately (no waiting for the nightly dream), keyed by fact_key. If an active memory with the same fact_key exists, its content and fields are overwritten in place and the old text is not kept; otherwise a new memory is created. To keep the old version as history, use memory_supersede. Pass authored_by (with the default source) to mark the memory as hand-authored: it ranks above distilled memories and the automatic pipeline cannot overwrite it. Returns { data: { id, created } }.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| tags | No | Free-form labels. | |
| type | No | One of fact, event, preference, relationship, boundary, habit, decision, note. Other values become fact (default). | |
| source | No | Who is writing. Leave unset (defaults to 'mcp'). authored_by is only stored when source is mcp, manual, api or remember_now. | |
| content | Yes | The memory text, one self-contained statement. | |
| fact_key | Yes | Stable key for this fact, e.g. 'user:favorite_coffee'. Reusing a key updates that memory. Facts about the outside world rather than the user use the prefix 'world_fact:'. | |
| namespace | No | Memory space to use. Defaults to 'default'. Ignored when the API key is bound to a fixed namespace. | |
| confidence | No | 0 to 1, how sure you are it is true. Defaults to 0.8. | |
| importance | No | 0 to 1, how much this matters. Defaults to 0.6. | |
| authored_by | No | E-axis signature; only honored on hand sources (mcp/manual/api/remember_now) | |
| valid_as_of | No | When the fact became true (ISO date or datetime). Used as the event date in recall. | |
| response_tendency | No | E-axis: how to respond when this memory fires |