MemoryRouter
Devin memory

Devin memory: what it saves, what Dreaming changes, and the gaps

Devin now carries lessons from one session to the next on its own. Here is what Memory and Dreaming keep, what they skip by design, what replaced Knowledge, and how to give Devin a vault your other tools share.

Cognition. Sources checked 2026-10-19.

Does Devin have memory?

Yes. Since October 2026, Devin Memory saves your preferences, corrections, decisions with the reasons you gave, and gotchas about your repos as one-line notes in a personal, Git-backed memory drive, and every new session starts with its MEMORY.md index as context. A background pass called Dreaming runs about once a day to consolidate notes, prune stale ones, and add lessons the original session missed. Memory is on by default and personal to you within each organization.

By design it does not save session summaries or task state such as PR numbers and statuses. Devin Knowledge, the older team-written library, is deprecated and being migrated to Skills automatically. For work context that also reaches Claude Code, Codex, Cursor, or ChatGPT, connect a MemoryRouter vault to Devin as a custom MCP server.

Devin memory layers compared

Five places context can live when you work with Devin, per Cognition’s docs and MemoryRouter’s own. Checked 2026-10-19.

LayerWho writes itScopeWhat it holds
Memory (memory drive)Devin, automatically, refined by DreamingPersonal, per organization. Not shared with teammates.Preferences, corrections, decisions and reasons, repo gotchas. Not session summaries, task state, or secrets. Source
SkillsYou or your team. Devin can suggest them.Repository, personal, organization, or enterpriseRepeatable procedures, such as how to test or deploy, as SKILL.md files. Source
Knowledge (deprecated)You or your team, with Devin suggestionsPersonal, organization, or enterprise, optionally pinned to reposTips and instructions with a trigger description. Being migrated to Skills with content unchanged. Source
Cascade memories (Devin Desktop)Cascade, automaticallyOne workspace on one machineLegacy Cascade agent only. The default Devin Local agent does not persist memories. Source
MemoryRouter vault (custom MCP)Devin when it calls store_memory, plus every other tool you connectThe one vault you pick during OAuth, shared across your toolsConversation memory: decisions, open threads, and where work stands, searchable by meaning or date. Source

How Devin handles memory today

Devin’s memories live in a memory drive: a persistent Git repository of Markdown notes, with MEMORY.md holding general preferences and an index of the other files. Each session gets its own checkout and reads MEMORY.md, then searches other notes only when the task needs them. When you correct Devin or it works something out, it writes a one-line entry linked to the source session, commits it, and merges edits from parallel sessions. New memories apply to future sessions, not the one that wrote them.

Dreaming is a background session that runs about once a day when you have been using Devin. It reviews recent sessions alongside existing memory, merges overlapping notes, removes transient details and notes no session used, and reorganizes the index. You browse the result under Customize > Memory. Files are read-only in the app, so you change a memory by asking Devin, for example "forget that I prefer npm". Admins can turn Memory on or off per organization, and enterprise admins can force it on or off everywhere.

Two older surfaces are changing. Knowledge, the organization-wide library of tips with trigger descriptions, is deprecated and being converted into Skills in a Knowledge plugin per scope, with no action needed. Devin Desktop is a separate surface: its Cascade memories stay local to one workspace, and the default Devin Local agent does not persist them.

What Devin forgets

Devin Memory is built to keep lessons, not progress. That is a deliberate design choice, and it leaves specific gaps.

The fix with MemoryRouter

Keep Devin Memory on for your preferences, and add a MemoryRouter vault for the work itself. Devin documents custom remote MCP servers over Streamable HTTP with OAuth, which is how MemoryRouter’s server connects.

  1. 1

    Add a custom MCP server in Devin

    Open Customize > MCPs, choose Add MCP, then Add custom MCP. Set the transport to HTTP, paste the server URL, and set authentication to OAuth. Adding a custom server requires the Manage MCP Servers permission; without it, use Suggest MCP Integration.

    Server URL (transport HTTP, authentication OAuth)

    https://mcp.memoryrouter.ai/mcp
  2. 2

    Connect with Personal access and pick your vault

    Save, then choose Connect and finish the MemoryRouter sign-in. Personal access lets each engineer authorize their own vault; Organization access shares one connection, which Devin recommends only for a service account.

  3. 3

    Prove it with a disposable fact

    Ask Devin to store a test fact in MemoryRouter and look for the store_memory call. Start a fresh session, ask it to check memory for that fact, and look for search_memories returning it. Then do the same from Claude Code or Codex to see one vault serving both.

Recall over MCP is model-directed: Devin calls search_memories or store_memory when it judges they help. Say "check memory" before work that depends on history, and "save where this stands" before a session ends. We have not certified Devin as a native integration, so treat the step 3 check as the receipt.

Start a MemoryRouter vault

One vault for Devin, Claude Code, Codex, Cursor, and ChatGPT. 14-day free trial.

Related

Devin memory FAQ

Sources

Sources checked 2026-10-19. Tool behavior changes; check the vendor docs before relying on a detail.

Start free