Skip to main content

Memory

The agent keeps notes on each repository you work in and reads them at the start of later conversations. It is how a second conversation already knows how your project is built and tested, without you explaining it again.

Memory is on by default. The notes are plain Markdown files on your machine.

Where it lives​

~/.abacusai/projects/<repo>/memory/
├── MEMORY.md the index
├── build-and-test.md one file per topic
└── api-conventions.md

MEMORY.md is an index: one line per topic file, with its name and a short description. Each topic file is ordinary Markdown with a small header giving its name, description and type.

Memory belongs to the repository, not the folder. Every worktree of the same repository shares one memory folder.

What travels with a conversation​

Only the index. The agent is given MEMORY.md so it knows which notes exist, and it opens a topic file only when it has a reason to. The files themselves stay on your machine and are not uploaded or synced.

The index is capped at 200 lines or 25 KB, whichever comes first. That cap is why the agent keeps the index terse and puts the detail in topic files.

Read your memory​

CommandWhat it does
/memoryList every note, with the folder they are in
/memory <name>Show one note
/memory offTurn memory off
/memory onTurn it back on

They are files, so you can also open, edit or delete them yourself. Delete a topic file and remove its line from MEMORY.md, or ask the agent to — the index is not rewritten for you. Delete MEMORY.md alone and it is rebuilt from the topic files still there.

Secrets are refused​

The agent cannot write a credential into memory. A write containing something that looks like a password, an API key or a long high-entropy value is rejected rather than saved.

That check is strict by design, and it does occasionally catch something harmless — a long hash in a note, for example. Shorten it or label it as a digest and the write goes through.

Shell commands cannot write to the memory folder at all. Only the agent's file tools can, so a command that redirects output into it is refused even in Unsupervised mode.

Turn it off​

Any of these work:

  • /memory off in a session
  • Memory in /settings, which writes autoMemoryEnabled to your user or workspace config.json
  • ABACUS_DISABLE_AUTO_MEMORY=1 in the environment

Turning memory off stops the agent reading and writing notes. It does not delete the ones already saved.

Move the folder​

Set autoMemoryDirectory in your user config.json to keep memory somewhere else:

{
"autoMemoryDirectory": "~/notes/abacus-memory"
}

It must be an absolute path or start with ~/, and it is a user setting only. A project cannot redirect its own memory. The path is also refused if it is your home folder, the workspace itself, or any folder containing or contained by the workspace. If the path is rejected the default folder is used and /memory says so.

Troubleshooting​

The agent does not remember anything​

Check /memory. If it says memory is off, turn it on with /memory on. If the list is empty, there is nothing saved yet — notes accumulate as you work, and a brand new repository has none.

A note is out of date​

Say so in the conversation and the agent will correct it, or edit the file yourself. Nothing re-reads a topic file until it is needed again.

Memory is not offered at all​

Memory is available in the CLI and the VS Code extension. The desktop app's code mode and CoWork do not have it yet.

For further help, reach out at support@abacus.ai.