Upsert a memory entry (requires explicit_user_intent)
memory_setCreate or update a key in memory by providing a stable key and value, with optional TTL, tags, and metadata. Requires explicit user intent.
Instructions
Create or update a key in memory. Rejects credential-shaped keys or values. Requires explicit_user_intent: true. Returns whether the row was created or updated.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| key | Yes | Stable identifier for the memory entry. Free-form text. Treat as case-sensitive. | |
| tags | No | Optional list of tags for grouping/filter/bulk-delete. | |
| value | Yes | The value to store. Will be JSON-serialized. Rejected if it looks like a credential. | |
| metadata | No | Optional small JSON object with provenance/notes. Subject to same secret-detection rules. | |
| ttl_seconds | No | Optional TTL in seconds. After this, the entry is lazy-deleted on next read. | |
| explicit_user_intent | Yes | Must be true. Set ONLY when the current user message explicitly asks the agent to modify memory (set/forget/export). Do not infer intent. |