デモ • 機能 • アーキテクチャ • ベンチマーク • クイックスタート • 設定
- [2026 年 6 月 1 日] XMem のメモリレイヤーにネイティブ Golang 実装が追加されました。より高いスループット、低いレイテンシ、そして数百万回規模のインタラクションでも信頼して動作する本番環境向けデプロイを目的に構築されています。
- [2026 年 5 月 25 日] ローカルワークスペース対応が公開されました。わずか 3 コマンドで XMem をローカルにセットアップし、数分でメモリ付きアプリケーションの構築を始められます。セットアップ手順は Local.md を参照してください。
npx create-xmem@latest
cd xmem
npm run devLLM との会話は毎回ゼロから始まります。ツールを切り替え、プロバイダーを切り替え、翌週に戻ってくると、すべてのコンテキストは失われています。
XMem はインドで No.1 のオープンソース Agentic Memory Layer です。私たちは Memory-as-a-Service、つまりあらゆる AI ユースケースとドメインのためのメモリレイヤーを提供します。長時間稼働するエージェントのための時間記憶、患者コンテキストのための医療記憶、チームやプロジェクトのためのエンタープライズ記憶、そしてコーディングエージェントやワークフローのための開発者記憶に対応します。
これはステートフル AI のための、初のエージェント型メモリレイヤーです。 従来のメモリシステムがチャンクの保存と検索にとどまるのに対し、XMem はメモリを能動的な推論プロセスに変えます。何を覚え、何を更新し、何を忘れるべきかを判断し、それぞれのメモリを適切な専用エージェントとストアへ動的にルーティングします。
任意の AI プラットフォームで「X」と入力するだけで、XMem が提供する 4 つのモードを切り替えられます。メモリの保存と検索、既存チャットからのコンテキスト取り込み、インデックス済みリポジトリの利用をシームレスに行えます。
demo.mp4
XMem の Chrome 拡張は、ChatGPT、Claude、Gemini、DeepSeek、Perplexity に永続メモリをもたらします。
リアルタイム検索と注入 - プロンプトを入力している間、XMem はメモリをリアルタイムに検索し、フローティングチップを表示します。ワンクリックで関連コンテキストを入力欄に直接注入できます。
バックグラウンド自動保存(Xingest) - 「送信」を押すと、XMem は会話ターンを非同期に取得します。バックグラウンドキューが事実と要約を抽出するため、UI の操作を妨げません。
extension-settings-1773462173011.mp4
新しい plugin/ フォルダにより、XMem を開発者向けエージェントやコーディングアシスタントへ直接組み込めます。Claude Code、Codex、Cursor、Hermes、OpenClaw、OpenCode 向けのファーストパーティ統合を含み、エージェントは既存メモリの検索、永続的なプロジェクト知識の保存、セッションをまたいだコンテキスト維持を行えます。API キーは環境変数またはクライアント固有のシークレットストアに保持できます。
Context を使うと、手動でコピー&ペーストすることなく既存の会話を XMem に取り込めます。
共有された ChatGPT、Claude、Gemini のリンクを貼り付けると、XMem がそれを開き、すべてのユーザー発言とアシスタント発言を抽出し、完全な ingest pipeline を実行して、その会話を検索可能なメモリにします。
トランスクリプトファイル(テキスト、Markdown、JSON)をアップロードすることもできます。XMem は Cursor と Antigravity のエクスポート形式を標準で解析し、未知の形式には LLM ベースのフォールバック解析を使用します。
abbIsz_DujBnbmVp.mp4
Scanner は Git リポジトリ全体をインデックスし、コードベースのクエリ可能なナレッジグラフを構築します。
インデックス後は、ファイル、関数、依存関係、影響範囲について自然言語で質問できます。新しいリポジトリの理解、機能の場所の特定、コードのつながりの追跡、変更によって壊れる可能性がある箇所の把握に役立ちます。
MV1KUiFXYXN7MpH3.mp4
すべてのメモリが同じではありません。それらを同じものとして扱うことが、他のソリューションが伸び悩む理由です。XMem の Classifier Agent は、入力されたすべてのデータを分析し、適切なドメインへルーティングします。
| ドメイン | 保存する内容 | 例 | ストレージ |
|---|---|---|---|
| Profile | 永続的なユーザー事実、好み、アイデンティティ | 「バックエンドでは Python より Go が好き」 | Pinecone |
| Temporal | 日付解決を伴う時間に紐づいたイベント | 「昨日 Staff Engineer に昇進した」 | Neo4j |
| Summary | 圧縮された会話の要点 | 「REST から gRPC への移行について話した」 | Pinecone |
| Code | シンボルに紐づく注釈、バグ、説明 | 「このリトライロジックには競合状態がある」 | Neo4j + Pinecone |
| Snippet | 個人のコードパターンやユーティリティ | 「これは Go で使う標準的なエラーハンドラ」 | Pinecone |
| Image | 視覚的な観察と説明 | アーキテクチャ図のスクリーンショット | Pinecone |
XMem に問い合わせるとき、検索は単純なベクトル検索ではありません。LLM 自身が何を調べるべきかを判断します。
- ツール選択 - Retrieval LLM がクエリを分析し、適切な検索ツール(SearchProfile、SearchTemporal、SearchSummary、SearchSnippet)を呼び出します。必要に応じて複数のツールを並列に呼び出します。
- 統合生成 - すべての検索ツールの結果を集約し、LLM が出典付きの回答を生成します。
つまり「私の好みの技術スタックは何で、auth モジュールを最後にリファクタしたのはいつ?」と聞くと、profile 検索と temporal 検索が自動的に同時実行されます。
XMem は 1 つのプロバイダーに縛られません。Gemini、Claude、OpenAI、OpenRouter、Amazon Bedrock、Ollama をまたいでオーケストレーションし、自動フェイルオーバーを行います。
gemini -> claude -> openai -> bedrock -> ollama
メインの LLM がレート制限を受けたり停止したりした場合、XMem は次のプロバイダーへ静かにフォールバックします。各エージェントは特定のモデルに固定でき、フォールバック順序は完全に設定可能です。
クラウド依存は不要です。LLM に Ollama、埋め込みに FastEmbed、ベクトルストレージに Chroma または SQLite を使って XMem を実行できます。
pip install -e ".[local]"
XMem は、LangGraph によって調整される専用 AI エージェントのパイプラインとして構築され、決定論的実行レイヤー(Weaver)と 3 つの目的特化型ストレージエンジンに支えられています。
ユーザー入力(SDK / Chrome 拡張 / API)
|
v
+--------------+
| Classifier | テキストを分析し、ドメインへルーティング
+------+-------+
|
+-----+-----+------+----------+
v v v v v
Profile Temporal Summary Code Snippet ドメインエージェントが構造化データを並列抽出
Agent Agent Agent Agent Agent
| | | | |
v v v v v
+----------------------------------+
| Judge Agent | 既存メモリと比較
| (ADD / UPDATE / DELETE / NOOP) | 重複と陳腐化を防止
+----------------+-----------------+
|
v
+----------------------------------+
| Weaver(Rust core) | 決定論的エグゼキュータ
| Pinecone | Neo4j | MongoDB | LLM なし。純粋なソフトウェアロジック
+----------------------------------+
- Classifier が入力を関連ドメインへルーティングします。
- Domain Agents(Profiler、Temporal、Summarizer、Code、Snippet、Image)が構造化データを並列抽出します。
- Judge Agent が各抽出結果を既存メモリと比較し、ADD、UPDATE、DELETE、NOOP のいずれかを判断します。
- Weaver が Judge の判断をすべてのストレージバックエンドに対して決定論的に実行します。コアは LLM に依存しない独立した Rust crate として実装されています。
高 effort モードでは、長い入力を重複するチャンク(約 200 token)に自動分割して並列処理し、結果を統合することで長い会話の取りこぼしを防ぎます。
ユーザークエリ
|
v
+----------------------------------+
| Retrieval LLM |
| 呼び出すツールを決定: |
| SearchProfile, SearchTemporal, |
| SearchSummary, SearchSnippet |
+----------------+-----------------+
|
+------------+------------+
v v v
Pinecone Neo4j Pinecone 並列検索実行
(profiles) (events) (summaries)
| | |
+------------+------------+
v
+----------------------------------+
| 回答統合 + 引用 | LLM が出典付き回答を生成
+----------------------------------+
| エンジン | 目的 | 用途 |
|---|---|---|
| Pinecone | 高速なベクトル類似検索 | Profile、要約、スニペット、コード注釈 |
| Neo4j | グラフ探索 + 時間推論 | イベント、コード知識グラフ、注釈 |
| MongoDB | 生ドキュメント保存 | スキャン済みコード、ファイルメタデータ、スキャン状態 |
Note
ローカルデプロイでは、Pinecone を Chroma、pgvector、または SQLite ベクトルストアに置き換えられます。
XMem を主要なメモリソリューションとともに、確立された 2 つの学術ベンチマークで評価しました。XMem は全体的に優れた結果を示しています。
メモリに対する合成推論をテストします。システムが会話をまたいだ事実を結び付け、時間関係を推論し、自由回答形式の質問に答えられるかを評価します。
| 手法 | Single-Hop (%) | Multi-Hop (%) | Open Domain (%) | Temporal (%) | Overall (%) |
|---|---|---|---|---|---|
| XMEM(私たちの手法) | 90.6 | 92.3 | 91.2 | 91.9 | 91.5 |
| Zep | 74.11 | 66.04 | 67.71 | 79.79 | 75.14 |
| Memobase (v0.0.37) | 70.92 | 46.88 | 77.17 | 85.05 | 75.78 |
| Mem0g (YC 24) | 65.71 | 47.19 | 75.71 | 58.13 | 68.44 |
| Mem0 (YC 24) | 67.13 | 51.15 | 72.93 | 55.51 | 66.88 |
| LangMem | 62.23 | 47.92 | 71.12 | 23.43 | 58.10 |
| OpenAI | 63.79 | 42.92 | 62.29 | 21.71 | 52.90 |
マルチホップ推論(異なる会話の事実を結び付ける能力)では、XMem は次点のシステムを 26.3 ポイント 上回ります。総合でも XMem は 91.5% で全システムをリードし、Zep の 75.14 を上回っています。
長期会話メモリの業界標準ベンチマークです。事実の想起、好みの変化の追跡、時間推論、セッションをまたいだコンテキスト保持を評価します。
| カテゴリ | XMem (Gemini 3-flash) | Backboard.io (GPT-4o) | Mastra (GPT-4o) | Supermemory (GPT-4o) |
|---|---|---|---|---|
| マルチセッション | 93.6 | 91.7 | 79.7 | 71.43 |
| 時間推論 | 94.5 | 91.7 | 85.7 | 76.69 |
| 単一セッション(アシスタント) | 96.43 | 98.2 | 82.1 | 96.43 |
| 単一セッション(ユーザー) | 97.1 | 97.1 | 98.6 | 97.14 |
| 知識更新 | 91.2 | 93.6 | 85.9 | 88.46 |
| 単一セッションの好み | 87.0 | 90.0 | 73.3 | 70.0 |
XMem はすべてのカテゴリで Backboard.io に匹敵し、セッション想起と好みの追跡でほぼ満点を記録しています。総合では Mastra を 9.2 ポイント、Supermemory を 11.8 ポイント 上回ります。
- 評価:構造化ルーブリックを用いた Gemini による LLM-as-Judge
- 公平性:すべてのシステムを同一の会話履歴とクエリでテスト
npx create-xmem@latest
cd xmem
npm run devWindows、macOS、Linux で動作します。ローカル XMem ワークスペースを作成し、バックエンドをインストールし、ローカルストレージを起動し、Chrome 拡張をビルドし、http://localhost:8000 で API を起動します。
ローカル前提条件:
- Git
- Node.js 20+
- Python 3.11+
- Docker Desktop
.envにクラウド LLM key を追加しない場合は Ollama
セットアップ後、次の場所から拡張機能を読み込みます。
repos/xmem-extension/dist
Chrome のパス:chrome://extensions -> デベロッパーモードを有効化 -> パッケージ化されていない拡張機能を読み込む。
npm run setup
npm run start
npm run verify
npm run doctor.env に実際のクラウド LLM key が含まれている場合、XMem はそのプロバイダーを使用し、埋め込みは FastEmbed でローカルに保ちます。クラウド key が設定されていない場合、XMem はローカル Ollama にフォールバックし、セットアップ中に必要なローカルモデルを取得します。
npm run context:export
npm run context:import -- --file ./exports/xmem-context.json
npm run context:sync -- --file ./exports/xmem-context.json --server https://api.xmem.in --api-key <key>context:export は、後でインポートまたは XMem サーバーへ同期できるローカルコンテキストバンドルを書き出します。
python -m src.scanner.runner \
--org your-org \
--repo your-repo \
--url https://github.com/your-org/your-repo.git \
--enrichTip
クラウド依存のない完全ローカルセットアップの場合:
FALLBACK_ORDER='["ollama"]'
EMBEDDING_PROVIDER=ollama
VECTOR_STORE_PROVIDER=pgvectorその後、ローカル追加依存をインストールします:pip install -e ".[local]"
XMem は高度に設定可能です。任意のエージェントのモデルを上書きし、フォールバックチェーンを調整し、品質と速度のトレードオフを変更できます。
| 設定 | デフォルト | 説明 |
|---|---|---|
FALLBACK_ORDER | openrouter,gemini,claude,openai | プロバイダーのフェイルオーバー順序 |
DEEPSEEK_API_KEY | empty | 公式 OpenAI 互換エンドポイント用の DeepSeek API key |
MIMO_API_KEY | empty | 公式 OpenAI 互換エンドポイント用の Xiaomi MiMo API key |
CLASSIFIER_MODEL | default model | classifier agent のモデルを上書き |
JUDGE_MODEL | default model | judge agent のモデルを上書き |
RETRIEVAL_MODEL | default model | 検索統合モデルを上書き |
EMBEDDING_MODEL | gemini-embedding-001 | テキスト埋め込みモデル |
EMBEDDING_PROVIDER | auto | auto, gemini, bedrock, ollama, fastembed |
VECTOR_STORE_PROVIDER | pinecone | pinecone, pgvector, chroma, sqlite |
PINECONE_DIMENSION | 768 | 埋め込みベクトルの次元数 |
RATE_LIMIT | 60 | 1 分あたりの API リクエスト数 |
TEMPERATURE | 0.4 | LLM 生成温度 |
