Anvil is an alpha testing release. It may have bugs. If something here doesn't match what you see, tell us.
Partly. GitHub Copilot can read custom instruction files, such as .github/copilot-instructions.md, which are added to requests made in a repository. Copilot Memory, in public preview, keeps facts about a repository and your preferences, and deletes any memory that goes unused for 28 days. To give Copilot a memory that stays on your own machine, encrypted, and that Claude Code and Codex share too, connect the free Vitkilabs Anvil app to Copilot in VS Code, Visual Studio or the Copilot CLI.
.github/copilot-instructions.md for the whole repository, .github/instructions/NAME.instructions.md files for matching paths, and AGENTS.md files. Copilot adds them to requests automatically.[2]If your work lives on GitHub, both are worth using. Anvil adds a memory that belongs to you rather than to one repository: encrypted on your computer, kept until you delete it, and shared with Claude Code and Codex if you connect them too.
brew install --cask vitkilabs/anvil/vitkilabs-anvil--dry-run to see the changes first:
anvil connect --client copilotanvil in the tools picker in Copilot Chat. In Visual Studio, turn on Anvil's tools in Copilot's agent mode. In the Copilot CLI, start a new session.Anvil adds only its own anvil server entry, and backs up each file as <file>.anvil-bak before its first edit.
| Where | File |
|---|---|
| VS Code, macOS | ~/Library/Application Support/Code/User/mcp.json |
| VS Code, Windows | %APPDATA%\Code\User\mcp.json |
| VS Code, Linux | ~/.config/Code/User/mcp.json |
| Copilot CLI and the GitHub Copilot app | ~/.copilot/mcp-config.json, plus an anvil:begin / anvil:end block in ~/.copilot/copilot-instructions.md. Only if that folder already exists, which it does once you've used either. |
| Visual Studio (Windows) | %USERPROFILE%\.mcp.json, only if Visual Studio is installed. |
Copilot gets Anvil's memory tools through MCP. In the Copilot CLI and the GitHub Copilot app, Anvil also adds standing instructions that ask Copilot to check its memory and save lasting facts. In VS Code and Visual Studio, Copilot uses the tools once you've turned them on. Either way, Copilot decides when to use them: it can skip a memory check or not save something, and Anvil can't change that. If you want something recalled for sure, ask it to check Anvil.
What gets saved is what you'd otherwise re-explain: decisions and why, constraints, fixes that worked, preferences. Anvil keeps facts and the links between them, flags a new fact that clashes with an old one, and shows where each memory came from. Nothing expires on a timer unless you set one.
anvil entry from the file above, or put back the .anvil-bak copy. That copy is the file as it was before Anvil first changed it.Your memory stays in an encrypted database on your computer, and your AI keys and sign-ins are never sent to Vitkilabs. After each Anvil update, run anvil connect --refresh.
It can. Copilot reads custom instruction files that you write, and Copilot Memory, in public preview, keeps facts about a repository and your preferences. GitHub deletes a memory that goes unused for 28 days.
Install the free Anvil app, create your vault and run anvil connect --client copilot. In VS Code, reload the window and turn on anvil in Copilot Chat's tools picker. Anvil's memory is stored encrypted on your computer.
GitHub Copilot in VS Code, in Visual Studio on Windows, the Copilot CLI and the GitHub Copilot app. Microsoft Copilot, the app built into Windows, and Copilot on github.com can't reach your computer, so they can't use Anvil.
Not on a timer, unless you set one. You can set memories to expire after a set time, or delete them for good.
Yes. Connect both to Anvil, and they read and write the same memory on your computer. Codex and the ChatGPT desktop app can share it too.
Each was checked on its maker's own site on 18 October 2026. Products change: if one of these no longer matches, tell us and we'll correct it.