中文 English 日本語

# mempal

コーディングエージェントのためのプロジェクトメモリ。シングルバイナリ、ハイブリッド検索、数秒で引用付きの過去の決定を検索。

`cargo install mempal`
GitHub crates.io 設計書

## 主要機能

🔍

### ハイブリッド検索

BM25 キーワードマッチング + ベクトル意味検索を RRF（Reciprocal Rank Fusion）で統合。エラーコードの完全一致も意味的類似性も対応。

🧠

### ナレッジグラフ

主語-述語-目的語のトリプル + 時間的妥当性。タイムラインビュー、統計情報、事実の無効化をサポート。

🌐

### クロスプロジェクトトンネル

同じ Room が複数の Wing（プロジェクト）に存在する場合、自動的にクロスドメインリンクを検出。検索結果にトンネルヒントを表示。

🤖

### 自己記述プロトコル

MEMORY_PROTOCOL（10のルール）を MCP ServerInfo に埋め込み。エージェントは接続時にワークフローを自動的に学習——設定不要。

🌍

### 多言語エンベディング

model2vec-rs（BGE-M3 蒸留）をデフォルトエンベッダーとして使用。ネイティブ依存関係ゼロ。中国語、日本語、韓国語、英語に対応。

📦

### 単一ファイルストレージ

すべてのデータは ~/.mempal/palace.db（SQLite + sqlite-vec）に格納。バックアップは cp、移行は scp。サーバープロセス不要。

🔗

### 9つの MCP ツール

status、search、ingest、delete、taxonomy、kg、tunnels、peek_partner、cowork_push。各ツールは JSON スキーマにフィールドレベルのドキュメントを搭載。

📝

### エージェントダイアリー

セッション間の行動学習。エージェントが OBSERVATION / LESSON / PATTERN を記録。将来のセッションで検索・学習可能。

🔒

### 安全な操作

ソフトデリート + パージの2段階削除。監査ログ。セマンティック重複検出。ドライラン プレビューモード。

## データフロー

    query → BM25 (FTS5)         → キーワードランキング
          → Vector (sqlite-vec) → 意味的類似度ランキング
          → RRF 統合 (k=60)     → マージランキング
          → Wing/Room フィルター → スコープ限定
          → トンネルヒント       → クロスプロジェクト参照
          → 引用（drawer_id + source_file）

8.5MB
リリースバイナリ
95.2%
R@5 検索精度
0
ネイティブ依存
5
インジェスト形式