Overview
EchoVault organizes memories into five distinct categories, each designed to capture a specific type of knowledge that agents need to retain across sessions.From
~/workspace/source/src/memory/models.py:9, the valid categories are:Categories
Decision
Decision
Use for: Architectural choices, technology selections, design decisionsDecisions capture the “why” behind choices made in your codebase. These memories help agents understand past reasoning and avoid revisiting settled questions.
What to capture
- The decision that was made
- Options that were considered
- Reasoning and tradeoffs
- Expected impact
- Follow-up actions needed
Example
Pattern
Pattern
Use for: Recurring code patterns, conventions, idioms, best practicesPatterns capture reusable knowledge about how things are done in your codebase. These memories help agents maintain consistency across the project.
What to capture
- The pattern or convention
- Where it’s used
- Why this approach is preferred
- Examples or template code
Example
Bug
Bug
Use for: Bug fixes, root causes, debugging insightsBug memories capture both the fix and the underlying cause. These memories prevent regressions and help agents understand subtle issues.
What to capture
- What the bug was
- Root cause analysis
- How it was fixed
- How to prevent similar issues
- Related files affected
Example
Context
Context
Use for: Project setup, infrastructure, deployment info, environment detailsContext memories capture environmental and infrastructure knowledge that agents need to work effectively in your project.
What to capture
- Project structure and organization
- Development environment setup
- Deployment procedures
- Infrastructure details
- External dependencies
Example
Learning
Learning
Use for: Discoveries, non-obvious insights, gotchas, lessons learnedLearning memories capture knowledge that isn’t obvious from reading the code. These memories save agents from rediscovering the same insights.
What to capture
- What was learned
- Why it’s not obvious
- When to apply this knowledge
- Related context
Example
Category Headings in Markdown
When memories are written to session files, each category gets its own section:Best Practices
Choose the Right Category
- Decision: For choices between alternatives
- Pattern: For how to do something consistently
- Bug: For what went wrong and how it was fixed
- Context: For environmental/infrastructure knowledge
- Learning: For non-obvious insights and gotchas
Quality Over Speed
From
~/workspace/source/src/memory/core.py:147-187, EchoVault provides quality warnings:- Warns if decision or bug memories lack details
- Suggests minimum 120 characters for meaningful context
- Checks for recommended sections: context, options considered, decision, tradeoffs, follow-up
Filtering by Category
When searching memories, you can filter by category to narrow results:Categories are optional. If not specified, the memory is stored without a category and will still appear in searches.