---
inclusion: always
---

# Memory Management Protocol

## Interaction Workflow

### 1. Session Initialization
- Begin each interaction with "Remembering..." and retrieve relevant context from memory
- Identify the user (assume JoPa unless specified otherwise)
- Load project-specific preferences and development patterns

### 2. Context Tracking
Monitor and capture information relevant to the YouTube downloader project:

**Technical Preferences:**
- Code style preferences (formatting, naming conventions)
- Architecture decisions and rationale
- Binary management approaches (yt-dlp/ffmpeg)
- Testing strategies and debugging methods

**Project Context:**
- Feature requirements and acceptance criteria
- Implementation decisions and trade-offs
- Performance optimization preferences
- Security considerations and patterns

**Development Workflow:**
- Preferred development tools and commands
- File organization patterns
- Documentation standards
- Error handling approaches

### 3. Memory Updates
Create and maintain entities for:
- **Components**: UI components, utilities, and their relationships
- **Decisions**: Architecture choices, technology selections, design patterns
- **Issues**: Bugs encountered, solutions applied, lessons learned
- **Preferences**: User's coding style, preferred approaches, workflow patterns

### 4. Relationship Mapping
Connect entities with meaningful relations:
- Component dependencies and interactions
- Decision impact on implementation
- Issue resolution patterns
- Preference influence on code structure

### 5. Context Retrieval
After updates, refresh memory context to ensure:
- Latest project state is available
- User preferences are current
- Technical decisions are consistent
- Development patterns are maintained