123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154 |
- ---
- description:
- globs:
- alwaysApply: true
- ---
- ## Memory Bank Structure
- The Memory Bank consists of required core files and optional context files, all in Markdown format. Files build upon each other in a clear hierarchy:
- ```mermaid
- 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
- 2. `productContext.md`
- - Why this project exists
- - Problems it solves
- - How it should work
- - User experience goals
- 3. `activeContext.md`
- - Current work focus
- - Recent changes
- - Next steps
- - Active decisions and considerations
- 4. `systemPatterns.md`
- - System architecture
- - Key technical decisions
- - Design patterns in use
- - Component relationships
- 5. `techContext.md`
- - Technologies used
- - Development setup
- - Technical constraints
- - Dependencies
- 6. `progress.md`
- - What works
- - What's left to build
- - Current status
- - Known issues
- ### 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
- ### Plan Mode
- ```mermaid
- 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]
- ```
- ### Act Mode
- ```mermaid
- flowchart TD
- Start[Start] --> Context[Check Memory Bank]
- Context --> Update[Update Documentation]
- Update --> Rules[Update .clinerules if needed]
- Rules --> 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
- ```mermaid
- flowchart TD
- Start[Update Process]
- subgraph Process
- P1[Review ALL Files]
- P2[Document Current State]
- P3[Clarify Next Steps]
- P4[Update .clinerules]
- 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.
- ## Project Intelligence (.clinerules)
- The .clinerules file is my learning journal for each project. It captures important patterns, preferences, and project intelligence that help me work more effectively. As I work with you and the project, I'll discover and document key insights that aren't obvious from the code alone.
- ```mermaid
- flowchart TD
- Start{Discover New Pattern}
- subgraph Learn [Learning Process]
- D1[Identify Pattern]
- D2[Validate with User]
- D3[Document in .clinerules]
- end
- subgraph Apply [Usage]
- A1[Read .clinerules]
- A2[Apply Learned Patterns]
- A3[Improve Future Work]
- end
- Start --> Learn
- Learn --> Apply
- ```
- ### What to Capture
- - Critical implementation paths
- - User preferences and workflow
- - Project-specific patterns
- - Known challenges
- - Evolution of project decisions
- - Tool usage patterns
- The format is flexible - focus on capturing valuable insights that help me work more effectively with you and the project. Think of .clinerules as a living document that grows smarter as we work together.
- 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.
|