16
18

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

Claude-Mem:Claude Codeにセッションを超える記憶を与える永続メモリプラグイン

16
Last updated at Posted at 2026-03-20

はじめに

Claude Codeを日常的に使っていると、セッションをまたいだときの「記憶喪失」に困ることがあります。昨日デバッグした内容、先週の設計判断、過去に試して失敗したアプローチ。新しいセッションを始めるたびに、これらの情報をゼロから伝え直す必要があります。

Claude-Memは、Claude Codeにセッション間の永続メモリを提供するプラグインです。ツール使用時の観察を自動キャプチャし、AIで圧縮・要約して、将来のセッションで関連コンテキストを自動注入します。

Claude-Memとは

Claude Codeのライフサイクルフックを活用した永続メモリシステムです。セッション中のツール使用やコード変更を「観察(Observation)」として記録し、SQLiteとChromaベクトルデータベースに保存します。次回のセッション開始時に、プロジェクトに関連する過去のコンテキストが自動的に注入されます。

主な特徴

  • セッション間で自動的にコンテキストを保持します
  • Progressive Disclosure(段階的開示)による効率的なメモリ検索ができます
  • MCPツール経由でプロジェクト履歴を自然言語で検索できます
  • http://localhost:37777でリアルタイムのメモリストリームを閲覧できます
  • <private>タグで機密情報を記録対象から除外できます
  • 手動操作は不要で、バックグラウンドで自動動作します

システム要件

要件 バージョン
Node.js 18.0.0以上
Claude Code 最新版(プラグインサポート付き)
Bun 自動インストール
uv(Python) 自動インストール

インストール

Claude Code Plugin としてインストール

Claude Code内で2つのコマンドを実行するだけです。

/plugin marketplace add thedotmack/claude-mem

/plugin install claude-mem

インストール後、Claude Codeを再起動します。これで前回セッションのコンテキストが新しいセッションに自動注入されるようになります。

npm install -g claude-memはSDK/ライブラリのみをインストールします。プラグインとして使用するには、上記の/pluginコマンドでインストールしてください。

OpenClawゲートウェイでの利用

OpenClawを使用している場合は、シェルスクリプトで一括セットアップできます。

curl -fsSL https://install.cmem.ai/openclaw.sh | bash

依存関係のインストール、プラグインセットアップ、AIプロバイダー設定、ワーカー起動までが自動で行われます。

アーキテクチャ

Claude-Memは5つのライフサイクルフックと、バックグラウンドのワーカーサービスで構成されています。

コアコンポーネント

コンポーネント 役割
ライフサイクルフック(5つ) セッションの各段階で自動処理を実行
ワーカーサービス Bunで動作するHTTP APIサーバー(ポート37777)
SQLite セッション、観察、サマリの永続ストレージ
Chroma Vector DB セマンティック検索 + キーワード検索のハイブリッド
mem-searchスキル 自然言語によるメモリクエリ

MCPツールによるメモリ検索

Claude-Memは3つの主要MCPツールを提供し、トークン効率の良い3層ワークフローで検索を行います。

3層ワークフロー

通常のメモリ検索では全文を取得するため大量のトークンを消費しますが、Claude-Memは段階的に絞り込むことで約10倍のトークン節約を実現します。

使用例

// ステップ1:インデックスを検索
search(query="認証バグ", type="bugfix", limit=10)

// ステップ2:インデックスを確認し、関連するIDを特定(例:#123, #456)

// ステップ3:必要な観察のみ全文取得
get_observations(ids=[123, 456])

Web Viewer UI

http://localhost:37777にアクセスすると、リアルタイムのメモリストリームを閲覧できます。

機能は以下の通りです。

  • 記録された観察の一覧表示
  • セッション別のフィルタリング
  • 個別の観察の詳細表示
  • ベータチャネルの切り替え(設定画面)

プライバシー制御

機密情報を記録対象から除外するには、<private>タグを使用します。

<private>APIキーやパスワードなどの機密情報</private>

<private>タグで囲まれた内容はClaude-Memの観察対象から除外され、データベースに保存されません。

設定

設定ファイルは~/.claude-mem/settings.jsonに配置されます。初回実行時にデフォルト値で自動生成されます。

設定可能な項目は以下の通りです。

  • AIモデルの選択
  • ワーカーポート番号
  • データディレクトリのパス
  • ログレベル
  • コンテキスト注入の設定

実際のユースケース

ケース1:長期プロジェクトの開発

数週間にわたるプロジェクトで、過去のセッションで行った設計判断を新しいセッションで参照できます。「先週、認証ミドルウェアをどう実装したか」を聞くと、過去の観察から関連するコンテキストが自動的に提供されます。

ケース2:デバッグの効率化

過去に遭遇したバグと解決策が記録されているため、類似のバグに再度遭遇した際に過去の対処法を即座に参照できます。「前回このエラーが出たとき、どう解決したか」という問いに対して、具体的なコード変更の履歴が返ってきます。

ケース3:プロジェクト知識の蓄積

プロジェクト固有の知識(コードベースの構造、過去の技術的判断、踏んだ地雷など)がローカルの~/.claude-mem/にメモリとして蓄積されます。新しいセッションを始めても「このプロジェクトの文脈を知っている」AIアシスタントとして振る舞います。チーム間での知識共有にはexport/importの手順が別途必要です。

ベータ機能:Endless Mode

ベータチャネルではEndless Mode(生体模倣型メモリアーキテクチャ)を試すことができます。長時間のセッションにおけるメモリ圧縮と検索の効率改善を目指す実験的機能です。理論モデルベースの改善であり、標準モードより遅くなる可能性もあります。

Web Viewer UI(http://localhost:37777)の設定画面からベータチャネルに切り替えられます。

トラブルシューティング

問題が発生した場合は、Claude Codeに問題を説明するだけでトラブルシュートスキルが自動的に診断と修正案を提示します。

よくある問題と対処法を紹介します。

  • ワーカーが起動しない場合:Bunがインストールされているか確認してください。自動インストールされるはずですが、手動でnpm install -g bunも可能です
  • メモリが注入されない場合:Claude Codeを再起動してフックが正しく登録されているか確認してください
  • ポート37777が使用中の場合settings.jsonでポート番号を変更できます

まとめ

Claude-Memは、Claude Codeの「セッションをまたぐと記憶がリセットされる」という根本的な制約を解消するプラグインです。

  • /plugin marketplace add/plugin install の2コマンドで導入できます
  • ツール使用の観察を自動記録し、次回セッションに関連コンテキストを注入します
  • 3層ワークフローで約10倍のトークン節約を実現します
  • <private>タグによるプライバシー制御があります
  • Web Viewer UIでメモリの内容をリアルタイムに確認できます

セッションごとに「前回の続き」を説明する手間がなくなり、AIアシスタントが本当の意味で「プロジェクトを知っている」存在になります。

関連記事

16
18
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
16
18

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?