minnimemory について
MinniMemoryMCP は、メモリファイルを監査し、常時読み込む部分と必要時に読む部分にまとめるローカルの Claude Code プラグインです。メモリを整理したい Claude Code ユーザー向けで、変更は元に戻せ、ネットワーク通信も行いません。
主な機能
- 01Claude Codeのメモリファイル監査
- 02常時・オンデマンドメモリの編成
- 03メモリ変更の検出
- 04バックアップからの変更取り消し
- 05プロンプトに合うメモリ部分の追加
活用シーン
- 01各ターンで読み込むメモリ量の削減
- 02適用前のメモリ変更の確認
- 03編成後の元ファイルの復元
- 04変更の検出と計画の再作成
MCP 対応
プラグインはローカル MCP サーバーを起動し、init、doctor、apply、undo の4つのツールを公開します。サーバーはツール呼び出しで指定されたファイル、または Claude Code のメモリとして特定されたファイルだけを読み取ります。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
ツール
4掲載時のツール一覧 · 1 日前に更新
| パラメーター | 型 | 必須 | 説明 |
|---|---|---|---|
| diff | enum | いいえ | デフォルトは要約、full は統合差分を含みますsummary | full |
| force | boolean | いいえ | 差分がなくても再適用計画をプレビューします |
| budget | integer | いいえ | トークン予算(デフォルトはファイルの 60%、最低 2000。フォルダーの場合は独自に計算します) |
| format | enum | いいえ | デフォルトのテキストtext | json |
| loaded | object | いいえ | |
| loaded.files | array | はい | |
| loaded.memoryDir | string | いいえ | |
| target | string | いいえ | ルート内のフォルダー。「.」=このプロジェクト。省略時:読み込み済みならメモリフォルダー、それ以外は init が記録したフォルダー |
詳細
Claude Code 向け MinniMemoryMCP
Claude Code プラグインとしての MinniMemoryMCP 1.3.7 です。Claude Code が読み込むメモリファイル(CLAUDE.md、AGENTS.md、メモリフォルダー)を監査し、毎ターン読み込まれる小さな AlwaysOnMemory 本文と、タスクで必要な場合にのみ読み込まれる OnDemandMemory ファイルにまとめます。変更はすべて元に戻せる形で保持されます。まず元のファイルをバックアップし、undo を実行するとバイト単位で元に戻します。すべての処理は、ユーザーが指示したときに限り、ユーザー自身のファイルに対してユーザーのマシン上で実行されます。MinniAI が開発しました。
要件
- PATH に Node.js 18.3 以降が必要です。サーバーとフックは
nodeで実行されます。Claude Code 自体のインストーラーには Node は不要なので、まずnode --versionで確認してください。 - 下記の1行でインストールするには、Claude Code 2.1.275 以降が必要です。それより古いバージョンでは、先にマーケットプレイスを追加してください(その下のシェル形式を使用します)。
インストール
/plugin install minnimemory --marketplace MinniAI-com/minnimemory-plugin
またはシェルから:claude plugin marketplace add MinniAI-com/minnimemory-plugin を実行し、続けて
claude plugin install minnimemory@minniai を実行します。
このプラグインは Claude Code で読み込まれます。また、セッションがコンピューター上で実行される場合は Cowork でも読み込まれます。claude.ai のチャットでは無視されます。ローカル MCP サーバーとフックはそこで実行されないためです。
マシンごとにいずれか一方の方法を選んでください。以前に npx minnimemory install を実行した場合は、先に npx -y minnimemory uninstall を実行してください。そうしないとサーバーが二重に登録され、プロンプトを送るたびに各フックのコピーが2つ起動します(2つ目は何も表示しませんが、起動分のコストがかかります)。
使い方
Claude Code でプロジェクトを開き、次の3つのプロンプトで一連の作業を行います。
- 「メモリを minnimemory で整理して」と指示します。Claude が
initを呼び出し、このプロジェクトで Claude Code が読み込むものの一覧、監査結果、およびapplyで行われる変更を表示します。メモリの読み込み元を記録する小さなファイル以外には、何も書き込みません。 - 「適用して」と指示します。Claude が
applyを呼び出し、コマンド1つとファイル操作の一覧を返します。コマンドは、ユーザーの承認プロンプトを通じてのみ実行されます。 - 1週間後に「メモリを確認して」と指示します。Claude が
doctorを呼び出し、変化した内容と再適用の計画を表示します。「メモリのコンパイルを元に戻して」と指示すると、元のファイルが復元されます。
同じ4つの手順はスラッシュコマンドでも実行できます:/mcp__minnimemory__init、doctor、apply、undo。
実行、読み取り、書き込み、送信する内容
- MCP サーバー(
node server/cli.mjs mcp)で、4 つのツール(init、doctor、apply、undo)を提供します。読み取るのは、ツール呼び出しで指定されたフォルダーと、あなたまたは Claude が Claude Code に読み込ませるよう指示したファイルだけです。検索は行いません。applyとundoはコマンドとファイル操作の 一覧を返し、Claude はあなたの承認を得た場合にのみそのコマンドを実行します。コマンドはnode "<plugin folder>/server/cli.mjs" apply --plan <hash> <folder>です。ダウンロードではなく、プラグイン 自体のファイルを使います。 - 3 つのフック。 各プロンプトの前に、
driftが前回の適用以降にメモリーが変更されたかを確認し、変更されている 場合は 1 行を表示します。hookは、プロンプトに一致するメモリーの短いセクションをデータとしてマークしたブロック 内に追加します。追加はセッションごとに 1 回だけで、認証情報のような行を含むセクションは追加せず、その旨を伝えます。 プロンプトフックによる削減量は、独自のメモリーフォルダーを使った Claude Code の実稼働セッションで測定しています (数値はドキュメントページに記載されています)。ほかのフォルダーでは測定していません。Claude Code が指示ファイルを 読み込むと、loadedは読み込んだファイルをローカルログに記録し、後でinitが参照できるようにします。 - バンドルに含まれますが、プラグインからは実行されません。
server/cli.mjsは npm パッケージのコマンドライン でもあるため、npx 方式のinstallおよびuninstallコマンドも含まれています。これらはclaude mcp addとclaude mcp removeを実行し、npx 形式のフックを設定に書き込みます。また、6 つの追加ツール(recall、outline、 list、audit、plan、compile)を備えたmcp --profile fullメンテナーモードも含まれています。プラグインは上記の 4 ツールプロファイルであるmcpのみを指定してサーバーを起動し、それ以外の機能は呼び出しません。これらは、 ファイルを手動で実行する人のために用意されています。 - ここでいう「メモリー」とは。 ディスク上にあるあなた自身のファイル、つまり
CLAUDE.md、そこからインポート されるファイル、および Claude Code がプロジェクト用に保持するメモリーフォルダーを指します。これらは、ツールで 指定した場合にのみ読み取られます。プラグインはチャット履歴、会話の要約、アップロードされたファイルを読み取りません。
まずサンプルで試す
このフォルダーにある examples/CLAUDE.md は、架空のプロジェクトのメモリーファイルです。空のフォルダーにコピーし、
そこで Claude Code を開いて「minnimemory でメモリーを整理して」と言い、続けて「適用して」、その後「メモリーのコンパイルを
取り消して」と言ってみてください。壊す心配のないファイルで、一連の流れをすべて試せます。
セキュリティに関する報告
脆弱性は [email protected] に報告するか、このリポジトリで GitHub issue として報告してください。どちらも メンテナーが確認します。プラグインはネットワーク通信を行わないため、報告のほとんどはディスク上での読み書きに関する ものになります。
- 書き込む内容と場所。 Claude の設定フォルダー(別途
CLAUDE_CONFIG_DIRが指定されていない場合は~/.claude) 内に、minnimemory/discovery.json(メモリーの読み込み元。initが書き込みます)、minnimemory/loads/<project>.jsonl(読み込みログ)、minnimemory/hook-sessions/<session>.json(プロンプトフックがすでに配置したセクション)、minnimemory/undo-backups/(強制的な取り消しで破棄される内容のコピー)が作成されます。コンパイル対象のプロジェクト またはメモリーフォルダーには、適用コマンドが作成するバックアップと小さな変更検出スタンプを.minnimemory/に 保存します。サーバー自体がメモリーファイルを書き込むことはありません。 - どこにも送信しません。 プラグインはネットワークリクエストを行わず、モデルを呼び出さず、データを収集しません。 セッションから読み取るデータは、フックがメモリーとの照合に使うプロンプトのテキストだけで、保存されることは ありません。
トラブルシューティング
- すべてのプロンプトで「hook failed to start」と表示される、またはサーバーに接続できない。 Node がインストールされていないか、Claude Code から参照できる PATH にありません。Node 18.3 以降をインストールしてください。デスクトップランチャーから起動した Claude Code は、新しい PATH を認識するためにインストール後の再起動が必要な場合があります。
- プロンプトフックが何も追加しない。 プロンプトに明確に一致し、読み込むよりも配置するほうがコストを抑えられ、常時読み込まれる本文にまだ含まれていない場合にのみ、セクションを配置します。メモリがごく小さいか、コンパイルされていない場合、配置するものはありません。まず
initとapplyを実行してください。 - minnimemory という名前のサーバーが 2 つある。 npx 版とプラグイン版の両方がインストールされています。
npx -y minnimemory uninstallを実行して、Claude Code を再起動してください。 applyでプランのハッシュが一致しないと表示される。 プレビュー後にメモリファイルが変更されました。doctorを実行して最新のプランを作成し、もう一度applyを実行してください。
更新
/plugin で minniai マーケットプレイスの自動更新を有効にするか、claude plugin update minnimemory@minniai を実行してください。新しいバージョンは、次回の起動時または /reload-plugins の実行後に読み込まれます。
企業の管理者向け: すべてのマシンで同じリリースを実行する必要がある場合は、自動更新を無効にし、管理対象の設定でバージョンを固定してください。
削除
claude plugin uninstall minnimemory@minniai。コンパイル済みのメモリはコンパイルされたままです。元の状態に戻したい場合は、先に undo を実行してください。<config>/minnimemory/ 内の小さな記録もそのまま残ります。何も残したくない場合は、そのフォルダーを削除してください。
ライセンス
LICENSE を参照してください。server/ に同梱されているサードパーティーコードとそのライセンスは、THIRD_PARTY_NOTICES.md に記載されています。
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。