anymo Docs
Features

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

  1. A run proposes

    Finished runs emit memory proposals, "prefers concise summaries", "staging deploys from the release branch", recorded as memory.proposed events and shown in the thread's From this run panel.

  2. 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").

  3. 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.

  4. 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:

NamespaceHoldsExample
userYour preferences"prefers concise summaries"
projectFacts about the project"API errors use RFC 7807"
workspaceOperational facts for this workspace"reports live under reports/"
skillKnowledge attached to skillstuning notes for a saved skill
team_reservedReserved for future team featuresunused 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.