🧠 A CLI tool to enable persistent memory for GitHub Copilot by managing structured markdown documentation.
GitHub Copilot doesn't retain memory between sessions. This tool solves that by scaffolding a persistent "Memory Bank" that documents your evolving project state for Copilot to consume.
- 🚀 Quick Setup: Initialize with
npx github-copilot-bank init - 📝 Smart Templates: Pre-built markdown templates for different aspects of your project
- 🔄 Flexible Updates: Options to force overwrite or update missing files only
- 🤖 AI-Optimized: Templates designed to be easily consumed by GitHub Copilot
npm install -g copilot-memory-bank
copilot-memory-bank initnpx copilot-memory-bank init# Basic initialization
npx copilot-memory-bank init
# Include Copilot instruction file
npx copilot-memory-bank init --with-instruction
# Force overwrite existing files
npx copilot-memory-bank init --force
# Update only missing files
npx copilot-memory-bank init --update--force: Overwrite existing memory bank files--update: Regenerate only missing templates--with-instruction: Addcopilot-instruction.md
After running the init command, you'll get:
📁 memory-bank/
├── product-context.md # Project overview and technical stack
├── active-context.md # Current tasks and team assignments
├── progress.md # Changelog-style progress log
├── decision-log.md # Architectural decisions with rationale
├── system-patterns.md # Code patterns and conventions
└── copilot-instruction.md # Instructions for GitHub Copilot (optional)
- Project name, description, and version
- Business goals and target audience
- Core features and technical stack
- Key dependencies
- Current sprint/iteration information
- Tasks in progress with assignments
- Current focus areas and blockers
- Pending decisions
- Chronological log of completed work
- Current progress and next steps
- Resolved issues and milestones
- Architectural and implementation decisions
- Context, rationale, and consequences
- Decision status tracking
- Architecture and code patterns
- Naming conventions and style guides
- Reusable components and best practices
- Direct instructions for GitHub Copilot
- Context file explanations
- Project priorities and constraints
- Keep It Updated: Regularly update the memory bank as your project evolves
- Be Specific: Fill in detailed, project-specific information in the templates
- Reference in Conversations: Mention the memory bank when asking Copilot for help
- Team Alignment: Ensure all team members contribute to keeping it current
Contributions are welcome! Please feel free to submit a Pull Request.
MIT License - see LICENSE file for details.
If you encounter any issues or have suggestions, please create an issue on the GitHub repository.