v0.16.0 — forget_memory: ask it to forget something
You can now ask it to forget something.
Until now deletion existed only as REST endpoints, which nobody talking to Assist can reach — so "forget that I like 21°C" had nowhere to go, and a wrong memory stayed wrong until you went and found it by hand.
You: forget that my canary word is bumblebee — it's honeybee now
AI: I'll forget exactly this memory: "User's test canary word is bumblebee". Shall I proceed?
You: yes
AI: Forgotten. I'll remember that your canary word is now honeybee.
Added
-
forget_memory— a sixth tool. It quotes the exact stored fact back and does nothing until you confirm. Several close matches return candidates and delete nothing; no match says so rather than guessing. -
Server-enforced two-call confirmation. The first call only previews; a later call in a different turn commits. The gate keys on the resolved fact's normalized content — not on the model's wording, which it rephrases freely between turns, and not on the fact id, which the extractor can retire and reissue for the same text in between. Without conversation continuity — a one-shot API call with no
conversationId, say — the tool refuses rather than deleting, because there is nobody to confirm with and a deleted memory does not come back.
Fixed
-
Post-turn extraction no longer re-learns what was just forgotten. The extractor runs over each turn's transcript, and "forget that my name is Alex" is a transcript containing "my name is Alex" — so the fact reappeared moments later under a fresh id. Extraction now filters against the memories the turn touched.
The filter asks which words changed, not how similar are these, because similarity can't tell the two cases apart: a replacement ("…canary word is honeybee") and a restatement ("The user's canary word is bumblebee") score identically against the forgotten text. A replacement drops a meaningful word and puts another in its place; a restatement keeps them all. Digits count as meaningful however short — otherwise swapping 21 for 23 reads as no change, and temperatures, times and thresholds are most of what this stores.
Notes
Ported deliberately from the sibling Nives add-on rather than copied across: the confirmation gate here is memory-scoped, since this project has no automations. It carries the fixes that project learned in production — content-keyed identity, the numeric-aware filter, refusing without a conversation, and reporting "already forgotten" when the extractor removed the fact before you confirmed.
227 tests, up from 184.
Upgrade: no configuration changes required. The tool appears automatically; nothing to enable.