MemPalace/mempalace

The best-benchmarked open-source AI memory system. And it's free.

概要

MemPalaceは、AIアシスタント(Claude Code、Codex CLI、Cursor、Gemini CLI、およびMCP互換の任意のクライアント)用のローカルファーストのメモリーレイヤーです。会話のトランスクリプトを逐語的に保存し(要約や言い換えなし)、新しいセッションでコンテキストが必要になったときに、セマンティック検索で取得します。プライバシーを重視しており、明示的にオプトインしない限り(例:サーバーサイドの埋め込みエンドポイントへの接続)、データがマシンから出ることはありません。

解決する問題

AIエージェントには記憶の問題があります。各新しいセッションはクールな状態で始まり、長時間のセッションではコンテキストが圧縮されて失われます。たとえば、Claude Codeのセッションは、注意深くフックを設定しないと約30日で失効します。MemPalaceは、エージェントに過去の作業の永続的で検索可能なアーカイブを提供し、新しいセッションが「なぜGraphQLに切り替えたのか?」という質問に対して、その決定がなされた実際の会話を取得して回答できるようにします(要約ではなく)。

仕組み

  1. マイニング — CLIコマンド(mempalace mine)がファイル、git履歴、またはClaude Codeのトランスクリプトを取り込み、それらを逐語的なテキストチャンクとして保存します。
  2. インデックス作成 — チャンクはローカルモデル(MiniLM約30MB、または多言語対応のEmbeddingGemma約300MB)で埋め込まれ、ベクトルデータベースに保存されます。デフォルトのバックエンドはChromaDBで、SQLite-exact、Rust-native、Milvus、Qdrant、pgvectorはオプションのドロップインです。
  3. 構造化 — インデックスは宮殿のメタファーを使用しています。人/プロジェクトは翼、トピックは部屋、コンテンツは引き出しに配置されます。検索はフラットなコーパスではなく、特定の翼にスコープを絞って実行できます。
  4. 取得 — 検索またはwake-upコマンドにより、関連する過去のセッションがエージェントのコンテキストに取り込まれます。
  5. 提供 — MCPサーバー(47ツール)により、MCP互換の任意のエージェントが実行時に宮殿を照会できます。読み取り/書き込み、ナレッジグラフ操作、翼をまたいだナビゲーション、ログストリームイベントによるエージェント調整が可能です。

主要コンポーネント

  • CLI(mempalace):mine、search、wake-up、audit、sweep — uv tool、pipx、virtualenv、またはDocker(マルチアーキテクチャamd64/arm64、Dockerfile.gpuによるGPUバリアント)でインストール可能。
  • MCPサーバー:47ツールを公開するstdio JSON-RPCサーバー。Claude Codeにサブプロセスとして組み込まれます。
  • プラグ可能なバックエンド:共通コントラクト(backends/base.py)の背後にある6つのストレージバックエンド。デフォルト以外はすべてオプトインです。
  • ナレッジグラフ:有効期間を持つ時間的エンティティ関係グラフ — 追加、クエリ、失効、タイムライン — ローカルSQLiteにバックアップされます。
  • エージェントの翼と日記:各専門エージェントは独自の名前空間を持ち、システムプロンプトを肥大化させることなく実行時に検出可能です。
  • 自動保存フック:Claude Code、Codex CLI、Cursor用。定期的な保存と圧縮前のスナップショット。sweepはメッセージごとの逐語的な引き出しを追加します。
  • ネイティブRustエンジン:rust_exactバックエンドとスタンドアロンのmempalace-native CLIが、Rustベクトルエンジンで同じSQLiteデータベースをスキャンします。複雑なケースではPythonにフォールバックします。
  • セットアップスキル:npx skills add MemPalace/mempalaceは、システムを検出し、パッケージをインストールし、MCPを構成し、ライブ接続を検証するエージェントスキルをインストールします。

注目すべき詳細/主張

  • ベンチマーク(すべてリポジトリから再現可能):LongMemEvalの検索リコールR@5は、生で96.6%(セマンティック検索のみ、LLMなし、APIキーなし)、ハイブリッドv4で98.4%(50のサンプルのホールドアウト開発セットでチューニング、450の未知のデータで報告)、オプションのLLMリランクで99%以上(Haiku、Sonnet、Ollama Cloud経由のminimaxなど、任意の高性能モデルで動作)。また、LoCoMo R@10 88.9%(ハイブリッドv5)、ConvoMem平均リコール92.9%、MemBench(ACL 2025)R@5 80.3%もリストされています。
  • 正直なベンチマーク:READMEは、Mem0、Mastra、Hindsight、Supermemory、Zepとの併置比較を明示的に拒否し、混合メトリクス比較は不誠実であると述べています。また、リランクの最後の0.6%のゲインを「テストへの教育」とフラグを立てており、100%の数値を意図的に見出しにしていません。
  • セキュリティ体制:CAUTIONセクション全体で、マルウェアを配布するインプレスタードメイン(mempalace.tech/.netおよびその他の.comバリアント)について警告しています。公式はGitHub、PyPI、mempalaceofficial.comのみです。
  • Dockerの既知の問題が文書化されています:Linuxバインドマウントのuid 1000権限、初回実行時のモデルダウンロード(約80MB/300MB、ネットワークが必要)、GPUイメージはx86のみ(aarch64のonnxruntime-gpuホイールなし)、developがデフォルトブランチ(リリース用に公開イメージをプル)。

制限事項/注意点

  • セットアップの面倒さ:README自体が、自動保存フックを配線しないとClaude Codeのセッションが30日で失効することを警告しています。つまり、価値提案はセットアップチェックリストに注意深く従うことに依存しています。
  • Android/Termuxネイティブサポートなし:ChromaDBとONNX RuntimeにはAndroidホイールがありません。TermuxユーザーはDebian PRootを実行する必要があります。
  • 初回使用時の遅延:埋め込みを必要とする最初のコマンドは、パワーモデル(約80〜300 MB)をダウンロードし、ハングしているように見える場合があります。
  • 埋め込みモデルの変更にはインデックスの再構築が必要(mempalace repair rebuild-index)。モデルを切り替えたり、サーバーサイドのOpenAI互換埋め込みエンドポイントに移行したりする場合。
  • ネイティブRust拡張はオプション:rust_exactは、複雑なフィルターやネイティブ拡張がインストールされていない場合にPythonにフォールバックします。ネイティブパスの公開ベンチマークはありません。

評決

AIメモリ分野における本格的で重要なプロジェクト:実際のコード(Python + Rustクレート)、再現可能なベンチマーク、プラグ可能なアーキテクチャ、Dockerパッケージング、MCP統合、セキュリティ意識の高いREADME。“宮殿”のメタファーは一貫して適用され、ベンチマークの規律(ホールドアウト分割、正直な注意事項)はこのカテゴリでは異常に優れています。核となるアイデア — 逐語的ストレージ、構造化スコープ、ローカルのみのプライバシー — はシンプルですがよく実行されており、エージェントフックエコシステム(Claude Code、Codex、Cursor)によりすぐに実践可能です。エージェントメモリを構築している場合や、Mem0/Zepエコシステムを評価している場合は、一見の価値があります。

関連

  • プロジェクト
  • プロジェクト
  • プロジェクト
  • プロジェクト
  • プロジェクト