Graphmem について
Graphmemは、コーディングエージェント向けのローカル共有メモリです。SQLiteにプロジェクトの決定事項をセッションをまたいで保存し、セマンティック検索とエンティティの関連付けに対応します。複数のMCPクライアントで同じストアを共有でき、任意でコードナビゲーションツールも利用できます。
主な機能
- 01SQLiteによるローカルメモリ保存
- 02セマンティック検索
- 03エンティティの関連付け
- 04セッションをまたぐ決定事項の保存
- 05任意のコード定義・差分ナビゲーション
活用シーン
- 01複数のコーディングエージェント間でプロジェクト情報を共有
- 02保存済みの開発規約を検索
- 03定義の検索やGitリビジョン間のシンボル比較
MCP 対応
MCPサーバーとして動作し、メモリの検索・管理ツールと、任意でコードナビゲーションツールを公開します。MCPクライアントは同じストアを利用できます。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
ツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
Graphmem

コーディングエージェント向けの共有ローカルメモリです。SQLite ストレージ、ローカルセマンティック検索、リンクされたエンティティを使って、プロジェクトの決定事項をセッションやツールをまたいで保持します。 Claude Code、Codex、OpenCode、pi、その他の MCP クライアントが同じストアを共有できます。
オプションのコードツールを使うと、定義の検索、ファイルの概要表示、インポートの一覧表示、Git のリビジョン間でのシンボル比較ができます。
インストール
npm install --global @sonic182/graphmem
gmem-install
gmem version
npm パッケージにはランチャーが含まれています。gmem-install は対応する CPU バイナリを明示的にダウンロードして検証するか、PATH 上にある動作可能なネイティブ版 gmem を再利用します。パッケージのインストール時にバイナリがダウンロードされることはありません。パッケージをアップグレードした後は、再度 gmem-install を実行してください。別途インストールしたバイナリは置き換えられません。
npx でサーバーを起動する MCP クライアントでは、npx -y @sonic182/graphmem mcp を実行できます。graphmem コマンドは初回実行時にバイナリをダウンロードして検証します。gmem が独自にダウンロードを行うことはありません。
または、GitHub Releases からお使いのプラットフォーム用アーカイブをダウンロードし、SHA256SUMS と照合して検証してから、展開した実行ファイルを PATH に追加してください。
Linux リリースには glibc 2.39 と OpenSSL 3 が必要です。その他のシステムや CUDA を使う場合は、ソースからビルドしてください。
コーディングエージェントでの使い方
プラグインには MCP の登録、スキル、作業前にコンテキストを呼び出し、作業後に永続化すべき決定事項を保存するためのガイダンスが含まれています。
| エージェント | インストール |
|---|---|
| Claude Code | claude plugin marketplace add sonic182/graphmem を実行し、続けて claude plugin install graphmem@graphmem を実行 |
| Codex | codex plugin marketplace add sonic182/graphmem を実行し、続けて codex plugin add graphmem@graphmem を実行 |
| OpenCode | opencode plugin @sonic182/graphmem --global |
| pi | pi install npm:@sonic182/graphmem |
Claude Code と Codex では、gmem と Node.js が PATH 上にある必要があります。Codex では、/hooks にある Graphmem のフックを信頼し、新しいスレッドを開始してください。Pi では初回起動時にバイナリをセットアップできます。OpenCode は必要に応じてインストーラーコマンドを表示します。
プラグインのセットアップとトラブルシューティングをご覧ください。
別の MCP クライアントを使う場合は、インストール済みのバイナリを起動するように設定してください。
{
"mcpServers": {
"graphmem": {
"command": "/absolute/path/to/gmem",
"args": ["mcp"]
}
}
}
CLI
gmem remember "Use nextest for integration tests" \
--type convention --scope repo:/absolute/path/to/project
gmem search "integration tests"
gmem tokens --over-limit # memories the embedding model truncates
gmem tui
gmem mcp
メモリの既定の保存先は現在の Git リポジトリです。git が PATH 上にある必要があります。
リポジトリの外では、既定のスコープは global です。読み取りでは常にグローバルメモリが含まれます。ほかのプロジェクトを明示的に選択するには、--scope(CLI)または scopes(MCP)を指定してください。
書き込み(更新や削除を含む)は、現在のリポジトリと global に限定されます。MCP の list_scopes ツールでスコープとその書き込み権限を確認できます。list では、選択したスコープのメモリをページごとに取得します。
データは ~/.graphmem に保存されます。別のディレクトリを使うには GRAPHMEM_HOME を設定してください。
コードナビゲーション(オプション)
リリースバイナリにはこれらのツールが含まれています。ソースからビルドする場合は --features code が必要です。
| MCP ツール | 用途 |
|---|---|
find_symbol | 定義とそのソース範囲を検索 |
code_outline | ファイル内の定義とネスト構造を一覧表示 |
code_imports | 宣言されたインポートを一覧表示 |
code_diff | Git のリビジョン間でシンボルを比較 |
gmem code find CodeService
gmem code outline src/application/code.rs
gmem code imports src/application/code.rs
gmem code diff origin/master
これらのツールは、埋め込みモデルを使わずに Git チェックアウト上で動作します。インデックス化するのは定義であり、呼び出し箇所や参照ではありません。それらを調べるには ast-grep を使ってください。
コードツールを無効にするには GRAPHMEM_CODE=off を設定します。
設定
設定ファイルは不要です。埋め込み、検索、コードのインデックス化をカスタマイズするには、~/.graphmem/config.toml を作成してください。設定リファレンスをご覧ください。
ビルド
ソースからのビルドと CUDA のセットアップをご覧ください。
開発
just verify
フォーマットチェック、コンパイル、Clippy、テストを実行します。 設計 · スキーマの進化
ドキュメントサイトをプレビューするには、hugo server --source site を実行してください。
サイトのセットアップを参照してください。
ライセンス
MIT。
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。