Project memory
Durable per-project notes the agent recalls across conversations.
The agent keeps durable notes about each project — decisions made, facts learned, conventions agreed on — and recalls them in later conversations. Yesterday's "we decided the API layer lives in src/api" doesn't have to be re-explained today.
How memory works
- Saving. After a turn completes, the relevant facts are distilled into short notes and stored server-side against your account and the project. The agent can also save a note deliberately with its
remembertool. When notes were saved, a small ◈ N saved to memory chip appears after the turn. - Recalling. At the start of a turn, the most relevant past notes are retrieved and injected into the agent's context automatically. The conversation surfaces what was recalled — each entry with its snippet, how old it is, and a relevance score — so recall is never invisible. Agents can also query notes explicitly with the
recalltool.
Because recall pulls only the relevant few notes, your in-context history stays short while the agent still remembers earlier sessions — this pairs with compaction, which points to memory as the durable store when it summarizes old turns away.
Scoped per project
Notes are namespaced by a project id derived from where the conversation runs — the git remote if there is one, else the repository root, else the working directory. Working in repo A never leaks notes into repo B, and clones of the same remote share one memory. The id is a hash; the raw path or remote URL isn't the key.
The ◈ chip and the Memory panel
The ◈ chip in the agent input footer shows memory state for the conversation:
- Tinted on: this conversation recalls and saves notes (the default).
- Off: memory is disabled for this conversation — nothing recalled, nothing saved.
Clicking the chip opens the Memory panel (a Tools panel view) focused on the current project. From there you can:
- View every note stored for the project — or across all your projects.
- Delete a single note, all notes for one project, or everything.
Deletion is real deletion on the backend, not a local hide — see Project memory API for the endpoints behind the panel.
Memory in orchestration
During orchestration, the lead and all workers share the same project memory via remember / recall — it's the team's coordination board. A worker that decides an interface shape records it; the others recall it before touching adjacent code.
What to expect in notes
Good memory notes are compact, factual, and reusable: "tests run with cargo test -p app", "the deploy script assumes the bucket name is set in .env". If you spot a stale or wrong note steering the agent, delete it from the Memory panel — the next turn recalls without it.