Skip to main content

Copilot Memory in VS Code: Your AI assistant just got smarter

If you've ever found yourself repeatedly correcting GitHub Copilot with the same preferences or re-explaining your team's coding standards in every chat session, the January 2026 release of VS Code brings a possible solution: Copilot Memory.

What Is Copilot Memory?

Copilot Memory is a new feature that allows GitHub Copilot to remember important context across your coding sessions. Think of it as giving your AI assistant a notebook where it can jot down your preferences, team conventions, and project-specific guidelines—and actually refer back to them later.

Released as a preview feature in VS Code version 1.109 (January 2026), Copilot Memory changes how you interact with AI-powered coding assistance by making your conversations with Copilot persistent and personalized.

How it works

The magic of Copilot Memory happens through a new memory tool that's integrated directly into VS Code's chat interface. Here's how it works:

Intelligent detection

Copilot automatically recognizes when you're sharing information worth remembering—like when you correct it or explicitly mention coding preferences. You don't need to manually flag everything; the AI intelligently detects what's important.

Two-way memory management

The memory tool can both retrieve relevant context from your stored memories and save new learnings as you work. This means Copilot doesn't just passively store information—it actively uses your memories to provide better, more contextual responses.

Smart storage decisions

The tool determines when to store information as a memory and when to retrieve relevant memories to inform its responses. For example, if you tell Copilot to "always ask clarifying questions when in doubt", it will remember this instruction for future interactions.

Getting started

To enable Copilot Memory in VS Code:

  • Make sure you're using VS Code version 1.109 or later
  • Open your settings and enable the memory tool by setting chat.experimental.chatMemory to true in VS Code
  • Start chatting with Copilot—the memory feature will work automatically

Remark: I only got this feature working when my Git repo was stored in GitHub. When I tried to use this with an Azure DevOps repo or local only repo I got the following message:

You can view and manage all your saved memories through GitHub's Copilot settings, giving you full control over what your AI assistant remembers.

You can view and manage all your memories from GitHub's Copilot settings.


Privacy and control

An important note: Copilot intelligently merges memories into your existing files or creates new ones, and you maintain full control over what's stored. You can review, edit, and delete any memory at any time through the GitHub Copilot settings interface.

Memories are stored in your workspace, making them part of your development environment rather than some opaque cloud storage you can't access or control.

Looking ahead

Copilot Memory is currently in preview, which means Microsoft is actively gathering feedback and iterating on the feature. I don’t know how this feature will evolve but some things I’m hoping for:

  • Better memory organization and categorization
  • Support for other sources than GitHub.
  • More control and improved detection of what's worth remembering

More information

VSCode - Copilot memory

Enabling and curating Copilot Memory - GitHub Docs

Popular posts from this blog

Podman– Command execution failed with exit code 125

After updating WSL on one of the developer machines, Podman failed to work. When we took a look through Podman Desktop, we noticed that Podman had stopped running and returned the following error message: Error: Command execution failed with exit code 125 Here are the steps we tried to fix the issue: We started by running podman info to get some extra details on what could be wrong: >podman info OS: windows/amd64 provider: wsl version: 5.3.1 Cannot connect to Podman. Please verify your connection to the Linux system using `podman system connection list`, or try `podman machine init` and `podman machine start` to manage a new Linux VM Error: unable to connect to Podman socket: failed to connect: dial tcp 127.0.0.1:2655: connectex: No connection could be made because the target machine actively refused it. That makes sense as the podman VM was not running. Let’s check the VM: >podman machine list NAME         ...

Cache stampede: when our cache turned against us

While investigating some performance issues, we ran into an ASP.NET Core API that cached a fairly expensive aggregation query for 60 seconds. Under normal load, that was fine: one request rebuilds the cache, everyone else reads from it. Under peak load, dozens of requests would arrive in that same expiry window, all see a cache miss, and all fire the same expensive query in parallel. The database didn't like that. That was the moment when our caching layer stopped helping and started hurting. A burst of requests comes in at the same time, all miss the cache, and all go hammer the database or the downstream API at once. That's a cache stampede . The cache was supposed to protect our backend, and for a few hundred milliseconds it did the opposite. Why this happens IMemoryCache.GetOrCreate (and its async sibling) looks like it protects you, but it doesn't add any locking on its own. Look at the naive version: public async Task<Report> GetReportAsync(string key) ...

Azure DevOps/ GitHub emoji

I’m really bad at remembering emoji’s. So here is cheat sheet with all emoji’s that can be used in tools that support the github emoji markdown markup: All credits go to rcaviers who created this list.