mcpField
M
memory

memory

github.com/rjyo生産性23137 回インストール39 週間前に更新
リポジトリ

memory について

Memoryは、長期的な決定事項や日々のメモをファイルに保存し、セマンティック検索で関連箇所を探すプロジェクト記憶スキルです。セッションをまたいでプロジェクトの文脈を確認したい人向けです。

主な機能

  1. 01長期メモと日次メモを分けて保存
  2. 02メモリーファイルのセマンティック検索
  3. 03パス、行範囲、スコア、抜粋を検索結果に表示
  4. 04ファイル同期による検索インデックス更新

活用シーン

  1. 01過去のデータベース選定を確認
  2. 02記録したコーディングパターンを検索
  3. 03セッションの進捗や一時的な情報を保存
  4. 04プロジェクトメモからユーザーの好みを取得

インストール

コマンドをコピーしてターミナルで実行します。

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

インストール後、Claude Code で/memoryを入力して読み込まれたか確認します。

詳細

メモリー

プロジェクト用のハイブリッド検索メモリーシステムです。重要な情報を保存し、後からセマンティック検索で見つけられます。

初回実行: 初回の使用時に動作が遅い場合は、bunx memory-search --warmup を実行して、埋め込みモデル(約300MB)を事前にダウンロードしてください。

メモリーファイルの構成

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

メモリーを検索する

ユーザーが過去の決定や好みについて尋ねたり、情報を思い出そうとしたりした場合:

bunx memory-search "QUERY_HERE"
検索例
bunx memory-search "database choice decision"
bunx memory-search "error handling pattern"
bunx memory-search "user preferences coding style"
bunx memory-search "authentication implementation"
出力形式

一致したスニペットを以下の情報とともに返します:

  • path:一致が見つかったファイル
  • lines:行の範囲(startLine-endLine)
  • score:関連度スコア(0-1)
  • snippet:一致したテキスト
検索後
  1. 関連する結果をユーザーに提示します
  2. 詳細を知りたい場合は、Read を使ってファイルの内容全体を取得します
  3. 結果が見つからない場合は、別の語句で検索することを提案します

メモリーに保存する

ユーザーが「これを覚えておいて」「これを保存して」「これを書き留めて」と言った場合や、情報を保存したい場合:

保存先ファイルを決める

MEMORY.md(永続):

  • ユーザーの好み(「TypeScript を使いたい」)
  • プロジェクトの決定事項(「X の理由から PostgreSQL を選択」)
  • コーディングパターン(「常に async/await を使う」)
  • アーキテクチャの決定事項
  • 重要な URL、連絡先、認証情報への参照

memory/YYYY-MM-DD.md(日次):

  • 今日取り組んだこと
  • 発見して修正したバグ
  • 後で検討するアイデア
  • 会議のメモ
  • 一時的なコンテキスト
保存方法
  1. 上書きを避けるため、既存のファイルがあれば最初に読み込みます
  2. タイムスタンプまたはセクション見出しを付けて、新しい内容を追記します
  3. 明確で検索しやすい表現を使います(後でベクトル検索されます)
  4. 検索インデックスを更新するため、保存後に同期を実行します
bunx memory-search --sync
例: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
例: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

ヒント

  • 単語を1つだけ使うのではなく、内容が具体的に伝わるクエリを使います
  • 検索はセマンティック検索です(完全一致する語句だけでなく、意味を理解します)
  • どのファイルを使えばよいかわからない場合は、ユーザーに尋ねます
  • 新しい内容を保存した後は、必ず同期します

コメント