Dreams (memory)
After a run, Anymo distills what seems worth keeping: your preferences, project facts, decisions. Each one becomes a proposal in Dreams. Approve it and it informs future runs; reject it and it is gone. Nothing is remembered behind your back.
Why review-first memory
Agent memory that writes itself drifts: one bad run and the agent "knows" something false about your project forever, with no record of where it came from. Anymo treats memory like a pull request. Proposals carry their source run, only approved items influence anything, and every status change is recorded. You are the merge button.
The flow
-
A run proposes
Finished runs emit memory proposals, "prefers concise summaries", "staging deploys from the release branch", recorded as
memory.proposedevents and shown in the thread's From this run panel. -
You review in Dreams
The Dreams view lists items with namespace filters on the left and a review list on the right: content, namespace chip, proposed or approved state, with approve and reject on hover. A receipt confirms each action ("Memory saved · view in Memory").
-
Approved memory flows into runs
New runs read the most recent approved value per key. Proposed and rejected items never reach a run's context, and approved memory is searchable through Query Fabric as a verified source.
-
Change your mind any time
Reject a previously approved item and it stops flowing immediately. History stays in the event log.
Namespaces
Memory is organized by what it describes, so the right facts reach the right runs:
| Namespace | Holds | Example |
|---|---|---|
user | Your preferences | "prefers concise summaries" |
project | Facts about the project | "API errors use RFC 7807" |
workspace | Operational facts for this workspace | "reports live under reports/" |
skill | Knowledge attached to skills | tuning notes for a saved skill |
team_reserved | Reserved for future team features | unused today |
What never gets stored
Values are redacted on the way in: home paths, secret-looking strings, and key material never persist, even inside an approved memory. Storage is a local SQLite database (.anymo/memory.db); nothing syncs anywhere. See Storage and data.
Beyond key/value: the brain graph
Dreams is the front door to a larger learning system. The same review-first rule covers a local knowledge graph of entities, facts, and relations with event-level provenance, plus compaction packets that let long jobs resume precisely. The full pipeline is documented in Self-learning.
For integrations
The same workflow is exposed over the app-server API (memory/list, memory/propose, memory/approve, memory/reject) and to other agents over MCP, where anymo.memory_propose can only propose, never write. External agents get to suggest; you still decide.
Frequently asked questions
Can I just tell it to remember something?
Yes. Ask in chat ("remember that I prefer tabular summaries") and the run proposes it; approve it in the panel and it is saved. The review step still applies, which is what keeps memory trustworthy.
How do I know a memory influenced a run?
Approved memory enters runs through recorded context, and run replays show what was available. Each memory item also carries its source run id, so provenance works in both directions.
Do I have to review every little thing?
Low-risk summaries can be saved pre-approved by the system, but anything that shapes future behavior waits for you. The volume is low by design; proposals are distilled, not dumped.