jeremy-georges-filteau/epicmem icon
public
Published on 8/12/2025
Epic Memory Bank

Hierachical memory system to keep structured project context that you must update systematically. The Memory Bank consists of core files and optional context files strucutre, all in Markdown format. FIles such as `projectbrief.md`, `productContext.md`, `activeContext.md`, `systemPatterns.md`, `techContext.md`, `progress.md`

Rules

Memory Bank Structure

The Memory Bank consists of core files and optional context files strucutre, all in Markdown format. Files build upon each other in a clear hierarchy:

flowchart TD PB[projectbrief.md] --> PC[productContext.md] PB --> SP[systemPatterns.md] PB --> TC[techContext.md]

PC --> AC[activeContext.md]
SP --> AC
TC --> AC

AC --> P[progress.md]

Core Files (Required)

  1. projectbrief.md

    • Foundation document that shapes all other files
    • Created at project start if it doesn't exist
    • Defines core requirements and goals
    • Source of truth for project scope
    • List of subfolders you have created when approprite
  2. productContext.md

    • Why this project exists
    • Problems it solves
    • How it should work
    • User experience goals
    • List of subfolders you have created when approprite
  3. activeContext.md

    • Current work focus
    • Recent changes
    • Next steps
    • Active decisions and considerations
    • Folders List: - Important patterns and preferences - Learnings and project insights
  4. systemPatterns.md

    • System architecture
    • Key technical decision
    • Folder List:
      • Design patterns in use
      • Component relationships
      • Critical implementation paths
  5. techContext.md

    • Development setup
    • Technical constraints
    • Dependencies
    • Folders List:
      • Technologies used (One file per technology, with best practices, rules)
      • Tool usage patterns (Record tool usage count, success and failure, to enable you to optimize your futures choices)
  6. progress.md

    • What works
    • What's left to build
    • Current status
    • Folders List: - Evolution of project decisions (One per decision with explanation) - Known issues (One per issue, with context, and ideas for resolution)

Additional Context

Create additional files/folders within memory-bank/ when they help organize:

  • Complex feature documentation
  • Integration specifications
  • API documentation
  • Testing strategies
  • Deployment procedures

Core Workflows

Architect Mode

flowchart TD Start[Start] --> ReadFiles[Read Memory Bank] ReadFiles --> CheckFiles{Files Complete?}

CheckFiles -->|No| Plan[Create Plan]
Plan --> Document[Document in Chat]

CheckFiles -->|Yes| Verify[Verify Context]
Verify --> Strategy[Develop Strategy]
Strategy --> Present[Present Approach]

Code Mode

flowchart TD Start[Start] --> Context[Check Memory Bank] Context --> Update[Update Documentation] Update --> Execute[Execute Task] Execute --> Document[Document Changes]

Documentation Updates

Memory Bank updates occur when:

  1. Discovering new project patterns
  2. After implementing significant changes
  3. When user requests with update memory bank (MUST review ALL files)
  4. When context needs clarification

flowchart TD Start[Update Process]

subgraph Process
    P1[Review ALL Files]
    P2[Document Current State]
    P3[Clarify Next Steps]
    P4[Document Insights & Patterns]

    P1 --> P2 --> P3 --> P4
end

Start --> Process

Note: When triggered by update memory bank, I MUST review every memory bank file, even if some don't require updates. Focus particularly on activeContext.md and progress.md as they track current state.

REMEMBER: After every memory reset, I begin completely fresh. The Memory Bank is my only link to previous work. It must be maintained with precision and clarity, as my effectiveness depends entirely on its accuracy.