memtomem について
memtomem は AI コーディングエージェント向けのローカル長期記憶を提供する MCP サーバー、CLI、Web UI です。Markdown ファイルを正本とし、BM25 とベクトル検索を組み合わせて、移行可能で検索しやすい記憶を実現します。
主な機能
- 01BM25 とベクトルのハイブリッド検索
- 02構造を考慮したドキュメント分割
- 03変更部分のみのインクリメンタル索引
- 04名前空間による記憶の整理
- 05重複排除や期限切れによる記憶管理
- 06検索とソース管理の Web UI
活用シーン
- 01複数セッションをまたいだメモの検索
- 02コードや文書を検索可能な記憶に追加
- 03スクリプトや CI 向けの機械可読な状態出力
- 04MCP ツール経由でのコーディングエージェントによる記憶利用
MCP 対応
MCP クライアントが記憶の検索、追加、索引作成に使える MCP サーバーとツールを提供します。中核操作は CLI または MCP ツールから明示的に呼び出した場合に実行されます。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
ツール
9掲載時のツール一覧 · 1 日前に更新
| パラメーター | 型 | 必須 | 説明 |
|---|---|---|---|
| path | string | いいえ | |
| force | boolean | いいえ | |
| auto_tag | boolean | いいえ | |
| namespace | any | いいえ | |
| recursive | boolean | いいえ |
詳細
翻訳後に原文が更新されています。最新の内容は原文をご確認ください。
memtomem
AI コーディングエージェント向けの Markdown ファーストな長期記憶です。ファイルは自分のものとして手元に残り、基本的な使い方ではフックをデフォルトで必要としません。
🚧 アルファ版 —
0.xリリース間では、API、デフォルト設定、ディスク上の設定項目が変更される可能性があります。フィードバックや問題の報告を特に歓迎します:Issues · Discussions。
memtomem は、Markdown のメモ、文書、コードを、あらゆる AI コーディングエージェントが利用できる検索可能なナレッジベースに変換します。通常の .md ファイルとしてメモを書くだけで、memtomem がインデックスを作成し、キーワードと意味の両方から検索できるようにします。
flowchart LR
A["Your files\n.md .json .py"] -->|Index| B["memtomem"]
B -->|Search| C["AI agent\n(Claude Code, Cursor, etc.)"]
初めての方へ Getting Started ガイドに従えば、5 分以内に動作する環境を整えられます。Claude Code または Codex CLI をお使いですか?韓国語版バイブコーディングのクイックスタートをご覧ください。
memtomem を選ぶ理由
| 問題 | memtomem による解決方法 |
|---|---|
| AI はセッションのたびにすべてを忘れてしまう | メモを一度インデックス化すれば、どのセッションでも検索できます |
| キーワード検索では関連するコンテンツを見つけられない | ハイブリッド検索:完全一致キーワード+意味に基づく類似性 |
| メモが複数のツールに散在している | Markdown、JSON、YAML、TOML、Python、JS/TS をまとめて検索できる単一のインデックス |
| ベンダーロックイン | .md ファイルが信頼できる唯一の情報源です。DB は再構築可能なキャッシュです |
| 隠れた自動化の動作を把握しにくい | 基本的な記憶操作は呼び出したときにのみ実行されます。オプションのクライアントフックは明示的で、削除可能な統合機能です |
クイックスタート
1. インストール
uv tool install 'memtomem[all]' # or: pipx install 'memtomem[all]'
mm --version # verify install
[all] を指定すると、以下のセクションで説明する機能、すなわち ONNX 密ベクトル埋め込み、韓国語トークナイザー、コードチャンク分割機能、Web UI がすべて含まれます。Ollama および OpenAI の埋め込みプロバイダーには追加のインストールは不要で、どのインストール構成でも利用できます。これらのダウンロードを省いた軽量なインストール(モデルをダウンロードする前で、インストール後のサイズは約 340 MB ではなく約 50 MB)については、Getting Started ガイドの最小構成でのインストール方法をご覧ください。
インストール直後に
mm --versionで表示されるバージョンが最新リリースより古い場合は、uvが PyPI のメタデータをキャッシュしている可能性があります。uv tool install 'memtomem[all]' --refreshを再実行するか、まずuv cache clean memtomemでキャッシュを消去してください。既存の uv ツールをアップグレードする場合は、uv tool installを再実行するのではなくmm upgradeを使用してください。保持されるものと停止するものについては、CLI リファレンスをご覧ください。
mm: command not foundと表示されますか?uv tool installはシムを~/.local/binに配置しますが、macOS/Linux の新しいシェルではこのパスが$PATHに含まれていません。uv tool update-shellを実行し、新しいシェルを開いてからmm --versionをもう一度実行してください。
2. セットアップ
Claude プラグインをアップグレードした後: 再読み込み後に
/mcpを再確認してください。 このプラグインはmemtomem[onnx]==0.6.9を起動します。起動方法が異なる手動登録 — ベースのみのmemtomem、または以前のリリースに固定された ONNX 起動 — は重複排除の対象にならず、ツールが重複して表示される場合があります。手動登録の名前とスコープを確認し、起動コマンドをプラグインに合わせるか、その重複登録を削除してください。
mm init # preset picker, then memory_dir + MCP
対話型ピッカーには、3 つのプリセットが用意されています — Minimal(BM25、ダウンロードなし)、English (Recommended)(ONNX multilingual-e5-small + 英語リランカー + プロバイダーを自動検出)、Korean-optimized(ONNX multilingual-e5-small + kiwipiepy トークナイザー、リランカーなし) — さらに、10 ステップのウィザード全体を開く Advanced 項目があります。プリセットの手順で尋ねられるのは、メモリディレクトリと MCP 登録のみです。それ以外はすべてプリセットに基づいて設定されます。
最も手早く、ダウンロードなしで最初の動作を確認するには Minimal を選択してください。セマンティック検索を追加する準備ができたら、後で mm init を再実行します。
インデックス作成と検出(Claude Code): セットアップで自動検出されるプロバイダーのメモリフォルダー(例:
~/.claude/projects/*/memory/)は、検索 インデックス に追加されます。これは、Web UI でオプトインして行う~/.claude/projects/の Context Gateway スキャンとは別の機能です。後者は Skills、Custom Commands、Subagents 用のプロジェクト ルート を検出します。違いと情報が失われるスラッグに関する注意事項は、Configuration → Context Gateway を参照してください。
自動化/CI の場合:
mm init --non-interactive # minimal preset, no prompts
mm init --preset korean --non-interactive # Korean-optimized bundle, no prompts
mm init --advanced # force the full 10-step wizard
モデル/プロバイダーの全対応表については、Embeddings を参照してください。
3. メモリの往復処理を確認する
最初の動作確認に、既存のメモディレクトリや接続済みエディターは必要ありません。
mm status
mm add "Deployment checklist uses blue-green rollout" --tags ops
mm search "blue-green"
mm add は設定済みのユーザーメモリディレクトリに書き込み、エントリをすぐにインデックス化します。最後のコマンドを実行すると、追加したばかりの文章が返されるはずです。
次に、エディターとの接続を確認します。
"Call the mem_status tool"
既存のメモを同じインデックスに取り込むには、すでに存在するディレクトリを mm index に指定します。
mm index /path/to/your/notes
mm status --json(または --format json)を使うと、スクリプトや CI 向けに同じステータスを機械可読形式で取得できます。
4. Web UI を開く(任意)
mm web # polished dashboard on http://127.0.0.1:8080
mm web -b # run in the background; logs go to ~/.memtomem/logs/web.log
mm web status # show pid/port/start time
mm web stop # stop the tracked Web UI process
mm web --dev # maintainer surface (adds opt-in pages)
mm web はデフォルトで、整ったページ一式を表示します。--dev を渡すか、シェルのプロファイルで MEMTOMEM_WEB__MODE=dev を設定すると、Sessions、Working Memory、Health Report などのメンテナー向けページが表示されます。
その他のインストール方法
uv tool install memtomem # no extras — no local ONNX model, Web UI or Korean tokenizer until you add them; Ollama/OpenAI embeddings still work
後から機能ごとに追加できます:uv tool install --reinstall 'memtomem[onnx,web]'(extras table を参照)。--reinstall はセット全体を置き換えるため、維持したい extras をすべて指定してください。通常の mm upgrade は現在のインストールから検出した extras を維持しますが、明示的に mm upgrade --extras のリストを指定する場合も、セット全体を含める必要があります。
プロジェクト単位(プロジェクトごとに分離):
uv add 'memtomem[all]' && uv run mm init # all commands need `uv run` prefix
インストールなし(必要に応じて uvx で実行):
claude mcp add memtomem -s user -- uvx --isolated --from "memtomem[all]==0.6.9" memtomem-server
OpenCode / Codex / Cursor / Antigravity / Windsurf / Claude Desktop / Gemini CLI / Kimi Code については、MCP Client Setup を参照してください。
主な機能
- ハイブリッド検索 — BM25 キーワード検索+高密度ベクトル検索+RRF 融合を 1 回のクエリで実行
- セマンティックチャンク分割 — 見出しを考慮した Markdown、AST ベースの Python、tree-sitter による JS/TS、構造を考慮した JSON/YAML/TOML
- インクリメンタルインデックス作成 — チャンク単位の SHA-256 差分検出。変更されたチャンクのみ再度ベクトル化します
- 名前空間 — フォルダー名からの自動導出により、メモリをスコープ付きグループに整理できます。Web UI の Settings → Namespaces から確認し、ラベル(色、説明)を付けられます
- メンテナンス — 近似重複の検出、時間ベースの減衰、TTL の有効期限、タグの自動付与
- Web UI — 検索、ソース、タグ、タイムライン、重複排除などを視覚的に確認できるダッシュボード(メンテナー向けの全機能を使うには
mm web --devを実行します) - コンテキストゲートウェイ — 正規の Skills、Commands、Subagents をプロジェクトまたはユーザーの Store に保持し、必要に応じて別の Wiki から再利用可能なアセットをインストールして、対応する AI ランタイムにプッシュできます。コンテキストゲートウェイを参照してください。
- MCP ツール —
mem_doメタツールはcoreモードですべての非コアアクションを振り分け、コンテキストの使用量を最小限に抑えます - 予測可能なコア — メモリ操作は明示的な CLI/MCP 呼び出し(
mm add、mem_add、mem_indexなど)で実行します。オプションのクライアントフックは別途インストール・削除するもので、隠れたランタイムの既定動作にはなりません。 - スクリプト対応 CLI — スクリプト向けの JSON 出力:
mm status、書き込みコマンド(mm add/mm reset/mm purge)、mm session start/end/list/events、mm schedule list、mm watchdog status/run、mm doctorでは--json、mm searchとmm recallでは--format jsonを使用できます。mm warmupはローカルモデルを事前に読み込み、初回のクエリでコールドスタートのコストが発生しないようにします - スケジュール済みジョブ — cron による圧縮、重要度の減衰、デッドリンクのクリーンアップ、重複スキャンには、
mm schedule add/list/run-now/delete(またはmem_do(action="schedule_*"))を使用します - ピン留めコンテキスト —
mm pinned composeを使って、小さなユーザー/プロジェクト/エージェントの Markdown ブロックを、取得した結果より前に配置できます - LangGraph Store — オプションの
MemtomemBaseStoreは、LangGraph のタプル名前空間による長期メモリのコントラクトを実装します - ハイブリッド LangGraph Store —
MemtomemHybridStoreは、専用の SQLite 永続化、BM25/高密度ベクトル/RRF による検索、TTL、診断機能を追加します
エコシステム
| パッケージ | 説明 |
|---|---|
| memtomem | コア — MCP サーバー、CLI、Web UI、ハイブリッド検索、ストレージ |
| Claude Code plugin | バージョンを厳密に固定した MCP サーバーと、7 つのスラッシュコマンドワークフロー |
| Claude Code automation plugin | プロンプト時の検索と書き込み時のインデックス作成に対応するオプションのフック |
| Codex plugin | バージョンを厳密に固定した MCP サーバーと、Codex CLI 向けの 7 つのワークフロー |
| opencode-memtomem | OpenCode — バージョンを厳密に固定した MCP、コマンド、読み取り用スキル、安全な権限設定 |
| Kimi Code skills | Kimi Code 向けのスキルバンドル(プラグインではありません) |
| memtomem-stm | STM プロキシ — ツールのインターセプトによるプロアクティブなメモリ提示 |
ドキュメント
memtomem.com で公開しており、このリポジトリでは Markdown 版も利用できます。memtomem を初めてお使いですか?ガイドにはおすすめの閲覧順序があります。以下の表はその順序に沿っており、実行可能な2つのサンプルは最初の利用ガイドの後に配置しています。
| ガイド | 説明 |
|---|---|
| はじめに | 最初のメモリーをインストール、設定、保存、検索する |
| 한국어 바이브코딩 빠른 시작 | Claude Code·Codex CLI에서 10~15분 안에 기억 저장·검색 |
| MCP クライアントのセットアップ | エディターごとの設定 |
| ランタイムをまたいだ引き継ぎ | Claude Code·Codex CLI·Kimi Code による順次共同開発 |
| ユースケース | 複数のツールを使う開発者、個人のナレッジベース、チーム向けの9つの実行可能なシナリオ |
| 프로젝트 업무별 체험 | 개발 작업 인계·제품 의사결정·온보딩: 모델 없는 체험, 기록 양식, 2주 파일럿 |
| サンプルノートブックおよびコーディングエージェントのサンプル | ノートブック:00から始めて、モデルを使わずに150個の合成ファイルから意思決定、コード、設定を復元します(韓国語)。01~04ではAPI、05~06ではLangGraphを学びます。サンプル:セッションをまたいで意思決定とそのADRの出典を復元します。分離されたCLIでの検証と、コピーして使えるプロンプトが含まれます |
| メモリーの主要ツール | 既存のメモをインデックス化し、検索して、メモリーを管理する |
| データ、設定、CLI | エクスポートとインポート、インポーター、mm config、CLI の完全なリファレンス |
| 整理とメンテナンス | 名前空間、重複排除、減衰、タグ付け、孤立データのクリーンアップ、mm doctor |
| 自動化 | ポリシーとスケジュール済みジョブ |
| 固定コンテキスト | 固定コンテキスト優先の構成、承認キュー、LangGraph ストア |
| 埋め込み | ONNX、Ollama、OpenAI の埋め込みプロバイダー |
| LLM プロバイダー | Ollama、OpenAI、Anthropic、および互換性のあるエンドポイント |
| 設定 | 対応する設定ファイル、優先順位、MEMTOMEM_* 変数 |
| コンテキストゲートウェイ | 1つのストアから AI ツール間でスキル、コマンド、サブエージェントを共有する |
| 複数デバイスの同期 | プライベートな git リポジトリを介して、個人用デバイス間で Markdown 形式のメモリーを同期する |
| 運用とトラブルシューティング | Web UI、プライバシー監査、診断、復旧 |
| memtomem のアンインストール | クリーンに削除する手順 |
| リファレンス | ツールとワークフローの完全なリファレンス |
コントリビューション
セットアップ手順とコントリビューター向けガイドについては、CONTRIBUTING.mdを参照してください。
ライセンス
Apache License 2.0。コントリビューションはコントリビューターライセンス契約の条件に基づいて受け付けています。
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。