mcpField
M
memory

memory

github.com/rjyoProductivity23137 installsUpdated 39w ago
Repository

About memory

Memory is a project memory skill that stores durable decisions and daily notes in files, then finds relevant passages through semantic search. It is intended for people who need to recall project context across sessions.

Key features

  1. 01Separate long-term and daily notes
  2. 02Semantic search across memory files
  3. 03Results include paths, line ranges, scores, and snippets
  4. 04Sync files to update the search index

Use cases

  1. 01Recall a past database decision
  2. 02Find a previously noted coding pattern
  3. 03Save session progress and temporary context
  4. 04Retrieve user preferences from project notes

Install

Copy the command and run it in a terminal.

$npx skills add https://github.com/rjyo/memory-search --skill memory

After installing, type/memoryin Claude Code to confirm it loaded.

Details

From the project README

Memory

A hybrid search memory system for your project. Save important information and find it later using semantic search.

First run: If slow on first use, run bunx memory-search --warmup to pre-download the embedding model (~300MB).

Memory File Structure

project/
├── MEMORY.md           # Long-term: preferences, patterns, decisions
└── memory/
    └── YYYY-MM-DD.md   # Daily: session notes, context, progress

Searching Memory

When the user asks about past decisions, preferences, or wants to recall information:

bunx memory-search "QUERY_HERE"
Search Examples
bunx memory-search "database choice decision"
bunx memory-search "error handling pattern"
bunx memory-search "user preferences coding style"
bunx memory-search "authentication implementation"
Output Format

Returns matching snippets with:

  • path: File where the match was found
  • lines: Line range (startLine-endLine)
  • score: Relevance score (0-1)
  • snippet: The matching text
After Searching
  1. Present the relevant results to the user
  2. If they want more detail, use Read to get the full file content
  3. If no results found, offer to search with different terms

Saving to Memory

When the user says "remember this", "save this", "note that", or wants to store information:

Decide Which File

MEMORY.md (Permanent):

  • User preferences ("I prefer TypeScript")
  • Project decisions ("We chose PostgreSQL for X reason")
  • Coding patterns ("Always use async/await")
  • Architecture decisions
  • Important URLs, contacts, credentials references

memory/YYYY-MM-DD.md (Daily):

  • What was worked on today
  • Bugs found and fixed
  • Ideas to explore later
  • Meeting notes
  • Temporary context
How to Save
  1. Read existing file first (if it exists) to avoid overwriting
  2. Append new content with a timestamp or section header
  3. Use clear, searchable language (will be vector-searched later)
  4. Run sync after saving to update the search index
bunx memory-search --sync
Example: MEMORY.md
## User Preferences

- Prefers Bun over Node for TypeScript projects
- Uses pnpm as package manager
- Likes minimal dependencies

## Project Decisions

### 2024-01-15: Database Choice
Chose SQLite over PostgreSQL because:
- Single-user application
- No need for concurrent writes
- Simpler deployment
Example: memory/2024-01-15.md
# 2024-01-15

## Session Notes

### 10:30 - Authentication Setup
- Implemented JWT auth flow
- Added refresh token rotation
- TODO: Add rate limiting

### 14:00 - Bug Fix
- Fixed race condition in user creation
- Root cause: missing transaction wrapper

Tips

  • Use descriptive queries, not single keywords
  • The search is semantic (understands meaning, not just exact words)
  • If unsure which file to use, ask the user
  • Always sync after saving new content

Comments

Markdown supported