Memory
Asyncat keeps what matters from your chats, so you don't have to repeat yourself. You can see, edit and turn off all of it.
What it keeps
Memories are short notes stored on your computer, in Asyncat's database. Each one has a kind:
| Kind | What it holds |
|---|---|
user | Stable facts about you: who you are, your work, constraints you keep. |
preference | What you like and don't, and how you want answers formatted. |
feedback | Corrections, such as “no, use the other folder”, and your notes on a Cat's runs. |
project | A project's state, conventions and decisions. |
reference | Pointers worth finding again: links, docs, commands, file locations. |
fact | A lasting fact that fits no other kind. |
context | Working context to reuse. Expires after 30 days. |
task_state | What's needed to pick up an unfinished task. Expires after 7 days. |
How memories are made
- When you ask. Say “remember that…” and the agent saves it.
- From chats. With Remember things from chats on (it starts on), after a run that used tools, one short request to your model picks out up to three lasting facts and preferences worth keeping. Corrections you make in a chat are kept as feedback.
- By hand. Add or edit one on the Memory page.
Turn Remember things from chats off in Settings → Privacy & safety → Learning from chats, and the agent saves a memory only when you ask. Temporary chats can read memories but never save, change or delete one.
How they're used
Relevant memories go into each run, so the agent starts with what it knows. When it searches its memory, it matches by meaning, using your provider's embeddings when they are available, and by words. Memories that are important or recently used rank higher.
When there are many, small memories of the same kind that are rarely used are merged into short summaries. Memories about you and your feedback are never merged.
Whose memories
| Where it was made | Who sees it |
|---|---|
| A chat outside any project | Every chat. |
| A chat in a project | Memories about you (user, feedback, preference) apply everywhere. The rest stay with that project. |
| A chat with one of your agents | It is kept as that agent's own. Other agents don't see it; each sees its own memories plus shared ones. |
| A Cat's run | Only that Cat. A Cat sees its own memories plus shared ones, and your chats never see a Cat's. |
The agent can also save a memory for every chat on purpose, when that's what you asked for.
The Memory page
Open Customize → Tools & Skills → Memory, or search for a memory with Cmd/Ctrl+K.
- Each memory shows whose it is: shared with every chat, a project's, an agent's or a Cat's.
- Filter by Whose memories (a project, an agent or a Cat) and by kind.
- Edit or delete any memory, or press Add to write one yourself.
- Consolidate merges small memories Asyncat saved of the same kind into short summaries and drops expired ones. Yours, and important ones, stay as they are.
An agent's editor and a Cat's settings link straight to their memories.
Memory tools
The agent uses these tools to work with memory during a run. See Workspace tools for the rest.
| Tool | Description |
|---|---|
save_memory | Save a memory with a kind and content, and optionally a key, tags, an importance from 0 to 1, and a scope (project or everywhere). |
recall_memory | Search memories by a query, optionally of one kind. |
list_memories | List stored memories, most important and recently used first. |
forget_memory | Delete one memory by its key. |
optimize_memory | Drop expired memories and merge small ones into summaries. |