strava-frontend/.roo/rules/memory-bank.md

1.8 KiB

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.