Quick setup
Copy the custom instructions
Copy the Memory Bank custom instructions at the bottom of this page.
Add to Cline
Paste the instructions into Cline Settings → Custom Instructions, or save them to a
.clinerules file in your project root.How it works
Memory Bank files are regular markdown files stored in your project. Both you and Cline can read and edit them. They’re organized hierarchically so that each file builds on the others:projectbrief.md is the foundation. Everything else builds on it. activeContext.md changes most frequently — it’s where Cline tracks what you’re working on right now.
Core files
| File | Purpose |
|---|---|
projectbrief.md | Foundation document with core requirements and goals |
productContext.md | Why the project exists, problems it solves, UX goals |
activeContext.md | Current focus, recent changes, next steps (updates most often) |
systemPatterns.md | Architecture, design patterns, component relationships |
techContext.md | Tech stack, setup, constraints, dependencies |
progress.md | What works, what’s left to build, known issues |
Key commands
| Command | What it does |
|---|---|
follow your custom instructions | Tells Cline to read the Memory Bank and continue where you left off |
initialize memory bank | Creates the initial memory-bank/ structure for a new project |
update memory bank | Triggers a full review and update of all Memory Bank files |
/newtask and /smol are especially useful for managing the context window without losing progress.
Managing context windows
Every AI model has a context window that limits how much it can hold at once. As a session grows, the window fills with conversation history, file contents, and tool results. Memory Bank helps you preserve important knowledge before that window fills up.Manual approach
When your context window is getting full:- Ask Cline to
update memory bankto document the current state - Start a new conversation
- Ask Cline to
follow your custom instructions
Using slash commands
/smolcompresses conversation history while keeping you in the same task. Use this when you want to free up space without starting over./newtaskdistills key decisions, file changes, and progress into a fresh task with a clean context window — like a developer handoff that preserves what matters.
Pairing with Plan & Act mode
Memory Bank works naturally alongside Plan & Act mode:- Plan mode: Start here when resuming a project. Ask Cline to read the Memory Bank, review the current state, and discuss strategy before making changes.
- Act mode: Switch to Act once you have a clear plan. Cline carries everything from the planning session into implementation.
/deep-planning to have Cline investigate your codebase and produce a detailed implementation plan. The Memory Bank gives Cline the project context it needs to plan effectively.
Memory Bank and Checkpoints
Memory Bank and Checkpoints solve complementary problems:- Memory Bank preserves knowledge: project context, decisions, patterns, and progress across sessions.
- Checkpoints preserve code state: file snapshots you can restore if something goes wrong.
Reducing your context footprint
Memory Bank works best when your starting context is lean. If Cline loads your entire project — including dependencies, build artifacts, and generated files — you burn through tokens before the real work starts. Add a.clineignore file. This is the single biggest improvement most users can make. It tells Cline which files to skip when scanning your project. A well-configured .clineignore can drop your starting context from 200k+ tokens to under 50k, which means faster responses, lower costs, and the ability to work effectively with smaller models.
Keep Memory Bank files concise. Each file adds to your context when Cline reads it at session start. Keep projectbrief.md to one page, activeContext.md to current state only (not a running log), and progress.md as a summary rather than a detailed changelog. If a file grows beyond a page or two, split the detail into a separate doc and link to it — Cline can read linked files on demand.
Use Cline Rules strategically. Rules load into every request. Use conditional rules to activate rules only when working with matching files, so frontend rules don’t load when you’re editing backend code.
Best practices
- Start with a basic project brief and let the structure evolve naturally
- Let Cline help create the initial file contents
activeContext.mdchanges most frequently — update it at the end of each sessionprogress.mdtracks milestones — review it when resuming after a break- Update the Memory Bank after significant milestones or direction changes
- Store the Memory Bank instructions in a per-project
.clinerulesfile to share context with collaborators - Add a
.clineignoreearly to keep your starting context small
Memory Bank custom instructions
Copy the following into Cline Settings → Custom Instructions or save it as a.clinerules file in your project root:
FAQ
Custom instructions or .clinerules — which should I use?
Custom instructions or .clinerules — which should I use?
Either works. Custom instructions apply globally across all projects. A
.clinerules file is project-specific and stored in your repo, which makes it easy to share with collaborators. You can also use conditional rules to activate Memory Bank instructions only when working with memory-bank/ files.How often should I update the Memory Bank?
How often should I update the Memory Bank?
After significant milestones or direction changes. For active development, every few sessions is a good rhythm. You can let Auto-Compact handle routine context management and reserve manual
update memory bank for important checkpoints.How does Memory Bank relate to Checkpoints?
How does Memory Bank relate to Checkpoints?
Checkpoints save your code state (file snapshots). Memory Bank saves your project knowledge (context, decisions, progress). They’re complementary: checkpoints let you roll back code changes, Memory Bank lets you pick up where you left off intellectually.
Does this work with context window limitations?
Does this work with context window limitations?
Yes — that’s exactly what it’s designed for. Memory Bank stores important information in structured files that Cline loads efficiently at the start of each session. This avoids context bloat while keeping critical information available. For more on context windows, see Task Management.
Does Memory Bank work with other AI tools?
Does Memory Bank work with other AI tools?
Yes. Memory Bank is a documentation methodology, not a Cline-specific API. Any AI that can read files can use the same approach. Commands may differ between tools but the structure works broadly.
How is this different from a README?
How is this different from a README?
A README documents the project for humans. Memory Bank documents the project for AI sessions — it includes files for active context and progress tracking that change frequently, and it’s structured specifically for efficient AI context loading rather than human onboarding.
Related
- Plan & Act mode — Separate thinking from doing with structured planning sessions
- Checkpoints — Roll back code changes while keeping your conversation context
- Cline Rules — Define persistent instructions including Memory Bank setup
- Task Management — Understand tasks, context windows, and when to start fresh
- Deep Planning — Generate detailed implementation plans from your Memory Bank context