| name | vector-memory |
| description | How to use vector memory effectively. Storage patterns, search strategies, category/tag conventions. Use when you need guidance on what to store or how to search. |
| user-invocable | false |
Vector Memory
Semantic memory system backed by vector embeddings. Stores experiences, patterns, and learnings; retrieves them by meaning rather than exact keywords.
Architecture
- Embedding model: sentence-transformers/all-MiniLM-L6-v2 (384 dimensions)
- Capacity: 10,000 memories
- Search: Cosine similarity โ finds conceptually related content even with different wording
- Persistence: Survives across sessions indefinitely
When to Store
Store memories when you encounter something that's true, useful, and doesn't have a better home.
| Situation | Store in vector memory? | Or use... |
|---|
| Reusable multi-step procedure | No | Skill (.claude/skills/) |
| Project-specific context or decision | No | Note (notes/) |
| Gotcha discovered through trial and error | Yes | โ |
| Pattern that worked well | Yes | โ |
| Observation about {{ cookiecutter.user_name }}'s preferences | Yes | โ |
| Performance finding or metric | Yes | โ |
| Workaround for a tool limitation | Yes | โ |
| Insight that connects two unrelated things | Yes | โ |
| Something you'd want to recall if you hit a similar problem | Yes | โ |
Rule of thumb: If it would help you in a future session but doesn't justify a whole file, it belongs in vector memory.
Categories
Use these consistently:
code-solution โ Working code patterns, implementations that solved problems
bug-fix โ Bugs found and fixed, including root cause
architecture โ Design decisions, patterns, structural approaches
learning โ Insights about people, process, or ways of working
tool-usage โ How to use tools effectively, gotchas, optimal settings
debugging โ Debugging approaches, diagnostic techniques
performance โ Speed/cost/efficiency findings with data
security โ Security considerations, vulnerabilities, safe patterns
other โ Anything that doesn't fit above
Tags
Use specific, lowercase, hyphenated tags. Aim for 3-8 tags per memory. Include:
- Subject tags: the system/tool/project involved (e.g.
react, docker, claude-code)
- Topic tags: what the memory is about (e.g.
permissions, yaml, cost-optimisation)
- Quality tags when relevant:
workaround, undocumented, silent-failure, confirmed
Search Strategies
The search is semantic โ it finds things by meaning, not keywords. This means:
- Use natural language queries: "how to make agents cheaper" works better than "agent cost reduction"
- Describe the problem, not the solution: "plugin skills not loading" finds the YAML indentation gotcha
- Be specific about context: "macOS UI inspection depth" beats "depth"
- Try multiple angles: If the first query misses, rephrase โ the concept might be stored with different framing
Similarity scores from MiniLM-L6 are typically in the 0.2-0.6 range for good matches. Don't worry about low absolute scores; focus on whether the top results are relevant.
Integration with Other Memory Systems
Vector memory is the associative layer between structured knowledge stores:
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โ Session Buffer (session-buffer.md) โ
โ Short-term. What happened last session. โ
โ Overwritten each session by go-to-sleep. โ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโค
โ Notes (notes/) โ
โ Long-term structured. Project state, decisions, โ
โ research, architecture. Organised by topic. โ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโค
โ Skills (.claude/skills/) โ
โ Procedural. How to do things. Auto-discovered. โ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโค
โ Vector Memory (mcp__vector-memory__) โ
โ Long-term associative. Patterns, gotchas, โ
โ insights. Retrieved by meaning. The glue. โ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
Don't duplicate content across systems. If something belongs in a skill, write the skill. If it belongs in a note, write the note. Vector memory is for everything in between โ the connective tissue of experience.
Maintenance
clear_old_memories removes old, rarely-accessed memories. Run periodically if approaching capacity.
get_memory_stats shows usage, category breakdown, and health.
- Memories have an
access_count that tracks how often they're retrieved. Frequently-accessed memories are kept during cleanup.