36 lines
1.8 KiB
Markdown
36 lines
1.8 KiB
Markdown
# Roo Code Memory Bank Protocol
|
|
|
|
I use a Memory Bank to maintain continuity across sessions. The Memory Bank files are located in `.roo/memory-bank/`.
|
|
|
|
## Core Hierarchy
|
|
|
|
1. `projectbrief.md` - Core requirements and goals (source of truth).
|
|
2. `productContext.md` - Why this project exists and user experience goals.
|
|
3. `systemPatterns.md` - System architecture, technical decisions, and design patterns.
|
|
4. `techContext.md` - Technologies, setup, constraints, and dependencies.
|
|
5. `activeContext.md` - Current focus, recent changes, next steps, and active decisions.
|
|
6. `progress.md` - What works, what's left to build, and known issues.
|
|
|
|
## Operational Workflow
|
|
|
|
### 1. Initialization (Start of Task)
|
|
|
|
- At the start of a task, I DO NOT blindly read all files.
|
|
- Instead, I MUST first check if the Memory Bank exists.
|
|
- I MUST read `activeContext.md` and `progress.md` first to understand the current state.
|
|
- I will read `projectbrief.md`, `systemPatterns.md`, or `techContext.md` ONLY if the task requires modification of architecture, tech stack, or core requirements.
|
|
|
|
### 2. Updating the Bank
|
|
|
|
I MUST update the Memory Bank files under the following conditions:
|
|
|
|
- When implementing significant changes or switching to a new sub-task (update `activeContext.md` and `progress.md`).
|
|
- When discovering or establishing new architectural patterns (update `systemPatterns.md`).
|
|
- When the user explicitly requests: **"update memory bank"** (in this case, review and update all relevant files).
|
|
|
|
### 3. Guidelines for Updates
|
|
|
|
- **Keep it concise**: Do not duplicate source code inside markdown files.
|
|
- **Maintain focus**: The `activeContext.md` should only contain what is relevant _now_ and _next_. Move completed items to `progress.md`.
|
|
- **Verify**: Before finalizing a task, ensure `progress.md` accurately reflects what works and what is left to do.
|