Claude-Mem の要点
- これはルールファイルではなくメモリ層です。フックがすべてのツール呼び出しをローカルのワーカーに渡し、2 つ目のエージェントがその活動を短い観察記録に変え、次のセッションはその圧縮インデックスから始まります。
- 対応しているインストール方法は 2 通り。npx claude-mem install(ランタイムを準備してブラウザでのセットアップを開く)か、/plugin marketplace add thedotmack/claude-mem に続けて /plugin install claude-mem を実行する方法です。
- Apache-2.0、TypeScript 製、メンテナーは Alex Newman(thedotmack)。メモリは ~/.claude-mem/claude-mem.db の SQLite にローカル保存され、クラウド同期はオプトインです。
- CLAUDE.md や Claude Code の自動メモリを置き換えるものではありません。3 つはすべてセッション開始時に読み込まれ、それぞれ別の問いに答えます。手短に知りたい場合は下の比較表をご覧ください。
thedotmack/claude-mem — README
出典github.comchecked 2026-11-13
.claude-plugin/marketplace.json — claude-mem 15.18.3
出典raw.githubusercontent.comchecked 2026-11-13
Installation Guide
出典docs.claude-mem.aichecked 2026-11-13
Configuration
出典docs.claude-mem.aichecked 2026-11-13
Telemetry — what is collected and how to opt out
出典docs.claude-mem.aichecked 2026-11-13
How Claude remembers your project — CLAUDE.md vs auto memory
出典code.claude.comchecked 2026-11-13
dsh-claude-mem — DeepSeek Harness port (unofficial)
出典deepseekharnessplugins.comchecked 2026-11-13
本ページのコマンド、設定、デフォルト値、パスは、2026-11-13 時点で上流リポジトリと公式ドキュメントから読み取ったものです。コマンドと設定名は意図的に未翻訳のままにしています。翻訳されたコマンドは動かないコマンドだからです。
リポジトリ情報は 2026-11-13 の GitHub API によるものです。スター 116,640、フォーク 10,120、作成日 2025-08-31、最新リリース v15.18.3 の公開日 2026-11-12。スター数は毎日動くので、スコアではなくスナップショットとして扱ってください。
Claude-Mem の正体
Claude-Mem は、Claude Code(および十数種のコーディングエージェント)に自分の作業についての記憶を与えるオープンソースのプラグインです。プロジェクト自身が問題をこう説明しています。新しいセッションは毎回ゼロから始まり、同じファイルを読み直し、同じ質問を繰り返し、すでに一緒に直した失敗にまた足を踏み入れる、と。
その答えは、あなたの隣で動く 2 つ目のエージェントです。ホスト側のエージェントに導入されたフックが、各ツール呼び出し(何を読み、何を編集し、何を実行したか)を小さなローカルワーカーに渡します。ワーカーはその活動に対してオブザーバーモデルを走らせ、短い構造化された観察記録とセッション終了時の要約を書き、ローカルの SQLite データベースに保存します。新しいセッションが始まると、ホスト側のエージェントはこのプロジェクトに関係する観察記録の圧縮インデックスを受け取り、必要になったときだけ詳細を取りに行きます。
つまりここでの記憶の単位は、あなたが書いた指示ではなく、起きた作業についての観察です。これが CLAUDE.md との決定的な違いであり、両者が競合せず共存する理由でもあります。
- ライセンス
- Apache-2.0
- 最新リリース
- v15.18.3 · 2026-11-12
- メモリの保存先
~/.claude-mem/claude-mem.db- スター数(2026-11-13)
- 116,640
3 つの動きでわかる仕組み
README はこのループを 3 文で説明しており、他のあらゆる機能はここから派生しています。
- 1
エージェントが作業する
ホスト側エージェントのライフサイクルフックが、各ツール呼び出しを小さなローカルワーカーに渡します。Claude Code の場合、フックは SessionStart、UserPromptSubmit、PreToolUse、PostToolUse、PostToolUseFailure、Stop、SubagentStop、SessionEnd をカバーし、さらに claude --init と --maintenance 用の Setup エントリがあります。各フックはシェルを介さない 1 本のコマンド、claude-mem hook claude-code <event> です。
- 2
オブザーバーが記録する
2 つ目のエージェントがその活動を短い観察記録に変え、セッション終了時に要約を書きます。デフォルトの圧縮モデルは Haiku(CLAUDE_MEM_MODEL=haiku)で、あなたの Anthropic プラン上で動作します。代わりに OpenRouter や Gemini のキーを指定することも、ベンダーがホストするオブザーバーを使うこともできます。
- 3
次のセッションはその記録から始まる
SessionStart 時に、エージェントはこのプロジェクトの観察記録の圧縮インデックスを受け取ります(デフォルトで 50 件、CLAUDE_MEM_CONTEXT_OBSERVATIONS で設定)。詳細は必要になったときだけ取得します。注入はプロジェクトでの 2 回目のセッションから始まります。1 回目のセッションにはまだ注入するものが何もないからです。
検索も同じ階層化の発想です。3 つの MCP ツール、search、timeline、get_observations が、まずインデックスを、次に時系列のコンテキストを、最後に完全なレコードを返すので、エージェントは自分が選んだ行にだけ詳細のコストを払います。mem-search スキルがこれらのツールを代わりに動かしてくれます。README に記載の数字では、インデックスの 1 行がおよそ 50〜100 トークン、完全なレコードが 500〜1,000 トークンです。これは 1 行あたりの比率であり、エンドツーエンドで実測した節約量ではないと README 自身が明言しています。
ワーカーが提供するその他の機能
ローカルワーカーは起動時に表示される URL でビューアを提供します(/viewer にメモリ、セッション、設定、ルートに My Work)。さらに検索以外のツールも公開しています。コードナビゲーション用の smart_search、smart_outline、smart_unfold、意図的にメモを書き込む save_memory、そして作業状態のトラッキングです。すべての観察記録には ID があり、ワーカー API から参照できます。
インストールと確認
以下の 2 通りの手順はいずれも上流のドキュメントからそのまま引用したものです。プロジェクトが推奨するのはインストーラー方式で、ランタイムを準備しフックランチャーをコンパイルするためです。プラグイン方式は Claude Code 内での 2 回のプロンプトで済みます。
方法 1 — インストーラー
ターミナルでこれを実行します。インストーラーは Bun と uv を確認し、プラグインファイルをコピーし、依存関係をインストールし、claude-mem ランチャーを PATH に追加して、エージェント、連携、スキル、メモリプロバイダーを選ぶブラウザセットアップを開きます。そのページを操作している間はターミナルを動かしたままにしてください。
npx claude-mem installnpm install -g claude-mem でインストールしないでください。README は明確に述べています。グローバルな npm インストールは SDK/ライブラリをマシンに置くだけで、プラグインのフックを登録せず、ワーカーも起動せず、PATH 上の本物のランチャーを覆い隠すことさえあります。
方法 2 — プラグインマーケットプレイス
Claude Code 内でこれを 2 つの独立したプロンプトとして送信し、その後再起動します。どちらの方法でもフックが設定されワーカーが起動し、以降は新しいセッションに過去のセッションのコンテキストが自動的に現れます。
/plugin marketplace add thedotmack/claude-mem/plugin install claude-memマーケットプレイス経由のみのインストールにはインストーラーの工程がないため、プラグインは最初のセッション開始時にコンパイルしながらランチャーを配置します。その最初のセッションはメモリコンテキストなしで動く可能性があり、次のセッションでは利用できます。npx claude-mem install を一度実行すればこの隙間は埋まります。
本当に動いているかを確認する
npx claude-mem doctor を実行します。Bun、uv、フックランチャー、ワーカーを検査し、何を直すべきかを教えてくれます。claude-mem --version はランチャーのプロトコル番号を表示し、起動時に表示されるワーカー URL がビューアを提供します。フックが「Executable not found in $PATH」と報告する場合、doctor は PATH 上でどの claude-mem が解決されるか、それがランチャーかどうかを示します。
npx claude-mem doctorclaude-mem --version始める前の前提条件
- 1Node.js 20.19 以降(20.x 系)または 22.12 以降。
- 2Bun 1.2.16 以降 — フックランチャーはこれでコンパイルされます。無ければインストーラーが Bun を導入します。
- 3uv。無ければ自動インストールされます。Chroma のセマンティック検索向け埋め込みサービスの Python 側を提供します。
- 4Claude Code 2.1.139 以降 — exec 形式のフック引数を実行する最初のリリースです。それ以前のビルドは引数を無視して素の claude-mem を実行するため、何も記録されません。SQLite は bun:sqlite 経由で同梱されています。
実際に挙動を変える設定
設定はすべて ~/.claude-mem/settings.json にあり、初回実行時にデフォルト値で自動生成されます。同名の環境変数がファイルの値を上書きします。ここに挙げるのは知っておく価値のある項目で、残りは設定ページに記載されています。
| 設定 | デフォルト | 役割 |
|---|---|---|
CLAUDE_MEM_MODEL | haiku | プロバイダーが Claude のときに観察記録を圧縮するモデル。haiku は最新の Haiku に追随し、完全な ID を指定するとバージョンを固定します。 |
CLAUDE_MEM_PROVIDER | claude | オブザーバーを動かすプロバイダー。claude、codex、gemini、openrouter、openai-compatible のいずれか。 |
CLAUDE_MEM_CONTEXT_OBSERVATIONS | 50 | セッション開始時に注入する観察記録の件数。起動時のブロックが重く感じるなら下げてください。 |
CLAUDE_MEM_MODE | code | ワークフロープロファイルと生成される観察記録の言語。例:code、観察記録を減らす code--chill、中国語の code--zh。 |
CLAUDE_MEM_DATA_DIR | ~/.claude-mem | データのルート。データベース、Chroma インデックス、ログ、設定、ワーカーの pid とポートファイルなど、他のすべてのパスはここから導かれます。 |
CLAUDE_MEM_WORKER_PORT | 37700 + (uid % 100) | ワーカーのポート。デフォルトはユーザーごとに変わるため、同じマシンの 2 ユーザーが衝突しません。HTTP API に対してスクリプトを書くなら固定ポートを設定してください。 |
CLAUDE_MEM_CONTEXT_PROJECTS | current | SessionStart がどのプロジェクトのメモリを読むか。current はこのチェックアウト、all は glob パターンで除外したものを除くすべてのプロジェクトです。 |
CLAUDE_MEM_SKIP_TOOLS | ListMcpResourcesTool, SlashCommand, Skill, TodoWrite, AskUserQuestion | 観察記録から除外するツール。出力が知識ではなくノイズであるツールに有効です。 |
CLAUDE_MEM_SESSION_START_INCLUDE_ALL_SOURCES | false | SessionStart のコンテキストに、現在使用中のハーネスだけでなく全ハーネスの観察記録を含めるかどうか。デフォルトは false。 |
CLAUDE_MEM_SKILLS_DISABLED | (none) | バンドルされたスキルを、フォルダ名そのままで Claude Code の一覧とスラッシュコマンドから隠します。 |
もう2つ知っておく価値があります。CLAUDE_MEM_SKIP_BASH_PATTERNS は各シェルコマンドに照合する正規表現を受け取り、ノイズの多いコマンドが観察記録にならないようにします。CLAUDE_MEM_REDACT_ENABLED(既定はオフ)は、保存前に検出したシークレットパターンを自動で伏字にします。
Claude-Mem と Claude Code 内蔵メモリの比較
Claude Code はすでに 2 つの方法で知識をセッション間に引き継いでおり、Anthropic のドキュメントは両者を補完関係と位置づけています。あなたが書く CLAUDE.md と、Claude 自身が書く自動メモリです。Claude-Mem はその上に乗る 3 つ目の独立した層です。
| 観点 | Claude Code 内蔵 | Claude-Mem プラグイン |
|---|---|---|
| 書き手 | CLAUDE.md はあなたが書き、自動メモリは Claude があなたの訂正から書きます。 | セッションが生み出したツール活動をもとに、2 つ目のオブザーバーエージェントが書きます。 |
| 保存場所 | CLAUDE.md はプロジェクトルートまたは ~/.claude/CLAUDE.md。自動メモリは ~/.claude/projects/<project>/memory/ に MEMORY.md インデックスとともに置かれます。 | SQLite は ~/.claude-mem/claude-mem.db、設定とログも同じフォルダ内。セマンティック検索用の Chroma インデックスは任意。 |
| 入る内容 | 指示とルール。自動メモリは学びやパターンを保持し、その最初の 200 行または 25KB だけが読み込まれます。 | 起きた作業についての観察記録 — 決定、バグ修正、何を読み何を変えたか — をモデルで圧縮したもの。 |
| 読み込みのタイミング | 毎回のセッションで自動的に、システムプロンプトの後のコンテキストとして。 | SessionStart 時にフック経由で、プロジェクトでの 2 回目のセッション以降。 |
| 読み取られ方 | ファイル全体または自動メモリのインデックスがそのままコンテキストに存在します。/memory でファイルを一覧・表示できます。 | 圧縮インデックスが注入され、詳細は 3 つの MCP ツール(search、timeline、get_observations)で取得します。 |
| 依存関係とコスト | 追加は何も不要 — Claude Code に同梱されています。 | Node、Bun、uv、ローカルのワーカープロセス、そして圧縮を行うモデル。デフォルトではあなたの Anthropic プラン、自分のキー、または有料のホスト型オブザーバー。 |
実務的な分担はこうです。ルールと規約は CLAUDE.md に、好みは自動メモリに集めさせ、Claude-Mem には実際に何をしたかの履歴を担わせます。一度しか意味を持たないセッションの詳細はどれも必要としませんし、毎回守るべきルールの置き場所は CLAUDE.md だけです。保存先としても排他ではありません——claude-mem の memory ingest は Claude Code の自動メモリのトピックファイルを、モデルのトークンを使わずに観察記録として自分のデータベースに取り込みます。
Claude Code メモリ チュートリアルプライバシー、制約、正直な注意点
このプラグインは作業セッションを記録するので、業務リポジトリに入れる前にデフォルト値を読んでおく価値があります。
- 1デフォルトはローカル。セッション、観察記録、要約は ~/.claude-mem/claude-mem.db の SQLite に書き込まれ、設定とログも同じフォルダに置かれます。クラウド同期はオプトインであり、自動では行われません。
- 2内容を <private> タグで囲めば保存されません——README の原文どおりです。検出したシークレットパターンの自動伏字は別のオプトインスイッチ CLAUDE_MEM_REDACT_ENABLED で、既定ではオフです。
- 3匿名テレメトリはデフォルトで有効です(PostHog、ランダムなインストール UUID にのみ紐付け)。npx claude-mem telemetry disable で無効化できます。DO_NOT_TRACK も尊重され、あらゆる設定を上書きします。
- 4圧縮はモデル呼び出しなので、ツール活動は選んだプロバイダーへマシン外に出ます。あなたの Anthropic プラン、OpenRouter や Gemini のキー、またはベンダーのホスト型オブザーバーです。意図して選んでください。
- 5これは Anthropic の製品ではなくサードパーティ製ソフトウェアで、実行可能なフックをインストールします。チームに展開する前に plugin/hooks/hooks.json と設定を読んでください。プラグインは実行しているコードそのものとして扱うべきです。実際にそうなのですから。
- 6トークンだけでなくコンテキストも消費します。注入されるインデックス、ワーカープロセス、マシン上の Bun と uv です。セッションがすでに短く自己完結しているなら効果は小さめです。見出しの数字を信じず、自分のリポジトリで測ってください。
どれも「入れないほうがいい」理由にはなりません。まず1つの実プロジェクトで試すべきだ、というだけです——決して記録されたくないリポジトリは glob で除外し、必要ならテレメトリも切ったうえで、開くすべてのリポジトリで既定にするかどうかを決めてください。
テレメトリの停止はコマンド1つです:
npx claude-mem telemetry disable