I Gave GitHub Copilot CLI a Memory I Own
Honestly, I was not trying to build a memory system. I just wanted to talk to Copilot CLI the way I would talk to another developer: “Save this debugging finding to local memory: the Redis integration tests must run serially because the workers share DB 0.” “Remember locally that changing the auth timeout requires updating both gateway.yml and worker.yml .” “Save this migration decision to local…
The author did not initially intend to create a memory system for GitHub Copilot CLI. Their goal was to converse with the tool as if discussing with another developer, instructing it to "Save this debugging finding to local memory: the Redis integration tests must run serially because the workers share DB 0." Over time, the author desired these details to persist across sessions so they could avoid reiterating them.
This led to the development of Copilot CLI Local Memory, a tool enabling users to save important project rules, such as "Production deployments must always use --dry-run," in an easily accessible format - a simple text file. The extension is designed to be straightforward, with only three main commands: /remember for saving rules, /memories to view stored rules, and /forget to delete them.
Each memory is saved as an individual instruction file in the ~/.copilot/instructions/local-memory/ directory, written in Markdown for easy inspection, editing, and backup. The system is deliberately minimalist, devoid of complex components like vector databases or servers, and focused solely on explicit, manageable memory storage.
Users can also specify scope for their rules, directing the system to apply certain instructions based on file patterns, like /remember --scope src/**/*.ts for rules specific to TypeScript files. The system is built with transparency in mind, allowing users to view, edit, and manage their memories directly. While it does not offer the comprehensive capabilities of GitHub's managed Memory, it addresses the need for personal, unobtrusive memory storage, particularly for developers who might face restrictions on GitHub's managed Memory.
The tool includes installers for Windows, macOS, and Linux, ensuring wide accessibility, and preserves saved memories during uninstallation by default. This extension is intended for temporary, task-specific knowledge that needs to be captured without interrupting workflow to curate extensive documentation. If an emerging piece of knowledge becomes a permanent team rule, it's advised to promote it to the repository's documentation.
The project is available for download from https://github.com/shankarnarayanb/copilot-cli-local-memory, offering a solution for those who wish to avoid repeating explanations to their coding assistant.
Written by urgent.news from Dev.to's reporting — not their text. Machine-written — may contain errors; check the original before relying on it.