mcpField
M
Memtrace

Memtrace

ローカル
github.com/syncable-devメモリ・ナレッジ5065 日前に更新

Memtrace について

Memtrace は AI コーディングエージェント向けの構造的メモリサーバーで、コードベースをシンボル、呼び出しエッジ、バージョン履歴からなるクエリ可能なナレッジグラフに変換します。セッションをまたいでコードの文脈を共有したい開発者向けで、グラフの構築には LLM 呼び出しではなくローカルの解析を用います。

主な機能

  1. 01LLM を呼び出さないローカルの Tree-sitter AST 解析
  2. 02シンボルの完全なバージョン履歴を保持する双時態メモリ
  3. 03検索、影響分析、時系列分析のための 25 以上の MCP ツール
  4. 04リポジトリをまたぐ HTTP API トポロジーのマッピング
  5. 05Louvain によるコミュニティ検出とハイブリッド検索

活用シーン

  1. 01リファクタリング前のブラストレディウスの見積もり
  2. 02関数の呼び出し元、呼び出し先、クラス階層の照会
  3. 03複数のエージェント間での同一の構造的コードコンテキストの共有

MCP 対応

Memtrace は MCP サーバーとして、検索、関係性の照会、影響分析、時系列分析、インデックス作成の機能を MCP ツールとしてクライアントに提供します。

設定

ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。

インストール方法は未掲載です

このサーバーのパッケージやリモートエンドポイントはまだ取得できていません。プロジェクトの README の手順に従ってください。

リポジトリ

ツール

ツール一覧はまだ取得されていません

ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。

詳細

Memtrace — AI コーディングエージェントのための構造的メモリ

エージェントには構造的メモリが必要です。

Syncable 公式の Memtrace。 memtrace.io/docsから始めてください。公式パッケージはnpm の memtrace、公開リポジトリはsyncable-dev/memtrace-publicです。同じ名前の他のプロジェクトとは関係ありません。memtrace --versionをStable and Nightly のリリース履歴と比較してください。

インストールに関するサポートが必要な場合は、オペレーティングシステム、Memtrace のバージョン、正確なエラーを添えて、公式の公開リポジトリに issue を作成してください。共有するログから認証情報や非公開のソースコードを削除してください。Syncable チームがこのパッケージとサポート窓口を管理しています。

📖 ドキュメント  ·  ⭐ スターを付ける  ·  memtrace.io  ·  npm  ·  Discord

Memtrace はコードベースを、AI コーディングエージェントがミリ秒単位でクエリできるライブナレッジグラフに変換します。すべての関数、クラス、呼び出しエッジ、バージョンを、あらゆるセッションにわたって扱い、ファイルを読み直したり、見えないものを壊したりすることはありません。

90 秒以内に、エージェント群で構造的メモリを共有できます。

構造的 · LLM 呼び出しゼロ  ·  双時制 · 時系列を遡るクエリ  ·  リプレイ対応 · 見落としのあるリファクタリングをゼロに

スター数 npm のバージョン ライセンス Rust MCP 言語 Discord DeepSeek Harness プライベートベータ


DeepSeek Harness

Memtrace はDeepSeek Harnessのプラグインとして動作します。まず Harness をインストールし(npm install -g @deepseek-ai/dsh — これはdshコマンドです)、次に Memtrace を追加します。

npx -y @deepseek-ai/dsh plugin --profile web add github:syncable-dev/dsh-plugin-memtrace

続いて、ワークスペースのインデックス作成と、影響範囲、変遷、またはアーキテクチャの概要の取得をエージェントに依頼します。詳細:syncable-dev/dsh-plugin-memtrace。


できること

リリースごとに、3つのことができます。

🧭   同じリポジトリ上で、マージ地獄に陥ることなく複数のコーディングエージェントを実行できます。 各エージェントは同じ呼び出しグラフを読み、影響範囲を把握し、同じ時系列の履歴を引き継ぎます。競合も、古いコンテキストもありません。

🔁   因果関係を完全に把握しながら、あらゆるリファクタリングを再現できます。 エージェントは、何が何に依存しているか、いつ何が変わったかを正確に確認できます。「関数をリファクタリングしたら、誰も気づかないうちに14個のテストが失敗した」という事態はもうありません。

⚡   5万ファイルのリポジトリを90秒未満でインデックス化できます。 Rust + Tree-sitterにより、APIコストは0ドルです。20以上の言語に加え、フレームワーク対応スキャナー(Vapor、Lapis、Kong、GitHub Actions、Terraform、RLSポリシーなど)を備え、すべてローカルで動作します。コードがマシンの外に出ることはありません。

🆕   LeanCTX Native — 圧縮読み込み、スマートツリー、価値の記録。 get_source_window に4つの新しい圧縮モード、1回の呼び出しで生成するディレクトリマップ、リアルタイムのトークン節約ダッシュボード、静的テーブルを約14%上回るオプトイン方式の適応型学習機能を追加しました。詳細はこちら:docs/leanctx-native.md。v0.3.57以降で利用できます。

https://github.com/user-attachments/assets/e7d6a1e9-c912-4e65-a421-bd0256dffa5a


数値

操作Memtrace最良の代替製品Δ
1,500ファイルのインデックス化1.5s · $0Mem0:31 min · $10–50約1,200倍高速
正確なシンボルクエリ(acc@1、lat)96.6% · 0.07 msGitNexus:97.0% · 8.95 msレイテンシーが128分の1
グラフ呼び出し元の再現率(Django)81.6%GitNexus:5.3%15.4倍
増分再インデックス化 p9542.5 msCodeGrapher:613.7 ms14.4倍
ハイブリッド acc@1(Django、3Kケース)73.9%GitNexus:38.6%1.91倍
PRコードレビューのF1(50 PR)0.7268Cubic v2:0.6077+19.60%
RSS/プロセス26 MBChromaDB:1,060 MB41倍省メモリ
言語16以上(Tree-sitter)製品により異なる—

再現可能なベンチマークスイート: benchmarks/。同じマシン、同じコーパス、同じアダプター契約を使用しています。正解データはPythonのastとpyrightのLSPから取得しており、ツール独自のインデックスからは取得していません。データセット内で特定のシステムが有利になることはありません。

詳細:BENCHMARKS-v0.3.22.md · BENCHMARKS-v0.3.29.md · コードレビュアーのベンチマーク


GitHubスターの増加

MemtraceのGitHubスター数の推移

アクセスを申し込む

Memtraceはプライベートベータです。フィードバックのサイクルを短く保つため、アクセスを段階的に提供しています。各グループはDiscordチャンネルに参加し、実際のバグ報告に基づく修正を1週間以内にリリースします。

→ memtrace.ioでウェイトリストに登録してください。

すでにアクセスできますか?npm install -g memtrace を実行すれば、90秒でインデックス化を開始できます。詳しいセットアップ手順は以下をご覧ください。

🔒 プライバシー。 Memtraceはすべてお使いのマシン上で動作します。ソースコードが外部に送信されることはありません。ネットワーク通信は、ライセンスの検証、ノード/エッジ数の集計、オプトアウト可能なクラッシュテレメトリーに限られます。ソース、ファイルパス、シンボル名は送信されません。詳細:PRIVACY.md、TELEMETRY.md。MEMTRACE_TELEMETRY=off でテレメトリーを無効にできます。


Memtraceが存在する理由

コードインテリジェンスツールはすでに優れたものが存在します。GitNexusとCodeGrapherContextは、*「現在リポジトリにあるもの」*に対応するASTベースのグラフを構築します。

Memtraceは、双時間性を備えたエピソード型の構造的ナレッジグラフです。 同じAST基盤を土台に、2つの次元を追加しています。

  • 時間的メモリ — すべてのシンボルが完全なバージョン履歴を保持します。6種類のスコアリングアルゴリズム(影響度、新規性、最新性、方向性、複合、概要)により、エージェントはさまざまな時間に関する問いを投げかけられます。「何が変わったのか?」、「何が予想外なのか?」、「何が壊れるのか?」。
  • サービス間APIトポロジー — Memtraceはリポジトリ間のHTTP呼び出しグラフをマッピングし、アーキテクチャ全体でどのサービスがどのエンドポイントを呼び出すかを検出します。

さらに、その構造レイヤーは包括的です。

シンボルはノード関数、クラス、インターフェース、型、エンドポイント
関係はエッジCALLS、IMPLEMENTS、IMPORTS、EXPORTS、CONTAINS
コミュニティ検出Louvainアルゴリズムがアーキテクチャ上のモジュールを自動で特定します
ハイブリッド検索Tantivy BM25 + ベクトル埋め込み + Reciprocal Rank Fusion + クロスエンコーダーによる再ランク付け
Rustネイティブコンパイル済みバイナリで、Python/JSのランタイムオーバーヘッドがなく、クエリレイテンシはp95で8 ms未満です

エージェントはコードを検索するだけではありません。コードを記憶します。


Memtraceと汎用メモリシステム(Mem0、Graphiti)の比較

Mem0とGraphitiは、エンティティに関する知識(例:User -> Likes -> Apples)の追跡を目的に設計された、優れた会話メモリエンジンです。この用途では非常に優れています。コードインテリジェンスに特化して使う場合のトレードオフは、グラフの構築にLLM推論を使うため、数千のソースファイルを処理するとコストと時間が増えることです。

Graphitiはadd_episode()を通じてデータを処理し、エピソードごとに複数のLLM呼び出し(エンティティ抽出、関係の解決、重複排除)を実行します。毎分約50エピソード(ソース)の速度では、1,500個のコードファイルの取り込みに1~2時間かかります。

Mem0はclient.add()を通じてデータを処理し、メモリアイテムごとのLLMによる抽出と競合解決を非同期でキューに追加します(ソース)。infer=True(デフォルト)で一括取り込みを行うと、すべてのファイルがLLMパイプラインを経由します。スループットはLLMプロバイダーのレート制限によって制約されます。

どちらも関係を解析するのではなく推論するため、大規模なコードベースではAPIコストが10~50ドル以上に膨らみます。

Memtraceは別のアプローチを取ります。 1,500個のファイルを1.2~1.8秒、0.00ドルでインデックス化します。LLMの呼び出しも、APIコストも、レート制限もありません。ネイティブのTree-sitter ASTパーサーが、決定的なシンボル参照(CALLS、IMPLEMENTS、IMPORTS)をローカルで解決します。トレードオフとして、Memtraceはコードに特化して設計されているため、Mem0やGraphitiのような会話上のエンティティメモリは扱いません。


25 以上の MCP ツール

Memtrace は、Model Context Protocol を通じて、包括的な構造解析ツールキットを提供します。

検索と発見

  • find_code — BM25、セマンティック検索、RRF を組み合わせたハイブリッド検索
  • find_symbol — Levenshtein 距離による完全一致/あいまい検索

関係性

  • analyze_relationships — 呼び出し元、呼び出し先、階層、インポート
  • get_symbol_context — 1 回の呼び出しで全方位を表示

影響分析

  • get_impact — リスク評価付きの影響範囲
  • detect_changes — 差分からシンボルへの範囲マッピング

コード品質

  • find_dead_code — 呼び出し元がゼロのコードを検出
  • find_most_complex_functions — 複雑度の高い箇所を検出
  • calculate_cyclomatic_complexity
  • get_repository_stats

時間的分析

  • get_evolution — 6 種類のスコアリングモード
  • get_timeline — 全バージョン履歴
  • detect_changes — 差分に基づく範囲分析

グラフアルゴリズム

  • find_bridge_symbols — 媒介中心性
  • find_central_symbols — PageRank/次数
  • list_communities — Louvain によるモジュール検出
  • list_processes / get_process_flow

API トポロジー

  • get_api_topology — リポジトリ間の HTTP グラフ
  • find_api_endpoints
  • find_api_calls

インデックス作成と監視

  • index_directory — 解析、解決、埋め込み
  • watch_directory — リアルタイムの差分更新
  • execute_cypher — グラフへの直接クエリ

17 個のエージェントスキル

Memtrace には、エージェントがグラフを使う方法を教えるスキル/ガイダンスが用意されています。依頼内容に応じて自動的に実行されるため、プロンプトエンジニアリングは不要です。

スキル依頼の例…
memtrace-search「この関数を探して」「X はどこで定義されていますか」
memtrace-relationships「これを呼び出しているのは誰ですか」「クラス階層を表示して」
memtrace-evolution「今週何が変わりましたか」「これはどのように進化しましたか」
memtrace-impact「これを変更すると何が壊れますか」「影響範囲」
memtrace-quality「デッドコードを探して」「複雑度の高い箇所」
memtrace-graph「アーキテクチャを表示して」「ボトルネックを探して」
memtrace-api-topology「API エンドポイントを一覧表示して」「サービスの依存関係」
memtrace-index「このプロジェクトにインデックスを作成して」「このコードベースを解析して」
memtrace-cochange「これと一緒に何が変わりますか」「隠れた結合」

さらに、複数のツールを判断ロジックで連携させる 8 個のワークフロースキルがあります:memtrace-first、codebase-exploration、change-impact-analysis、incident-investigation、refactoring-guide、continuous-memory、episode-replay、session-continuity。


時間的エンジン

さまざまな時間的な問いに対応する 6 種類のスコアリングアルゴリズム:

モード最適な用途
compound汎用的な「何が変わりましたか?」— 影響度、新規性、直近性を重み付けして組み合わせます
impact「何が壊れましたか?」— 影響範囲で順位付けします(in_degree^0.7 × (1 + out_degree)^0.3)
novel「予想外のことは何ですか?」— 驚き度スコアによる異常検出
recent「インシデント付近で何が変わりましたか?」— 時間経過に伴う指数減衰
directional「何が追加され、何が削除されましたか?」— 非対称スコアリング
overviewモジュールレベルの簡易サマリー

構造的重要度予算化を使用し、重要度の合計の 80% 以上をカバーする最小限の変更セットを提示します。


互換性

エディター/エージェントMCP ツール(25 個以上)スキル/ガイダンスインストール
Claude Code✅✅npm install -g memtrace — 完全自動
Claude Desktop✅✅自動 — Claude Code と共有
DeepSeek Harness✅✅npx -y @deepseek-ai/dsh plugin --profile web add github:syncable-dev/dsh-plugin-memtrace
Cursor(v2.4 以降)✅✅npm install -g memtrace — 完全自動
Codex CLI✅✅npm install -g memtrace — 完全自動
Windsurf✅✅npm install -g memtrace — 完全自動
VS Code(Copilot)✅✅npm install -g memtrace — 完全自動
Hermes✅✅npm install -g memtrace — 完全自動
OpenCode✅✅npm install -g memtrace — 完全自動
Kiro✅Steeringnpm install -g memtrace — 完全自動
Cline/Roo Code✅—MCP サーバーを手動で追加
任意の MCP クライアント✅—MCP サーバーを手動で追加

スキルは、ツールを連携して使う方法をエージェントに教えるワークフロープロンプトです。Kiro は SKILL.md を使用しないため、Memtrace は代わりに同等の自動 Steering ファイルを作成します。


セットアップ

DeepSeek Harness

dsh は Memtrace ではなく、@deepseek-ai/dsh に含まれています。

npm install -g @deepseek-ai/dsh
dsh plugin --profile web add github:syncable-dev/dsh-plugin-memtrace

グローバル CLI を使わない場合:

npx -y @deepseek-ai/dsh plugin --profile web add github:syncable-dev/dsh-plugin-memtrace

このバンドルは Memtrace のスキルを登録し、Harness プロファイル内で memtrace mcp を起動します。初回起動時は npx 経由で Memtrace バイナリを取得する場合があります。npm install -g memtrace と MEMTRACE_BIN=memtrace を使って、ローカルインストールを固定できます。

Claude Code + Claude Desktop
npm install -g memtrace

バイナリ、17 個のスキル、MCP サーバー、プラグイン、マーケットプレイスなど、すべてを処理します。1 つのコマンドで、両方のエディターに対応します。

手動でセットアップする場合:

claude plugin marketplace add https://github.com/syncable-dev/memtrace-public.git
claude plugin install memtrace-skills@memtrace --scope user
claude mcp add memtrace -- memtrace mcp
Cursor

npm install -g memtrace を実行すると、すべてが自動的に処理されます。Cursor v2.4 以降は、Claude と同じ SKILL.md 形式を読み込みます。

プロジェクトローカルにインストールする場合(スキルをリポジトリと一緒に管理できます):

npx memtrace-skills install --only cursor --local
Codex、Windsurf、VS Code、Hermes、OpenCode、Kiro

インストーラーは、新しいエージェント環境向けにスキル/ガイダンスと MCP 設定も作成します。

エージェントグローバルスキル/ガイダンスグローバル MCP 設定プロジェクトローカルのサポート
Codex~/.agents/skills/~/.codex/config.toml.agents/skills/、.codex/config.toml
Windsurf~/.codeium/windsurf/skills/~/.codeium/windsurf/mcp_config.json.windsurf/skills/。MCP はユーザーレベルのまま
VS Code/Copilot~/.copilot/skills/VS Code のユーザー mcp.json.github/skills/、.vscode/mcp.json
Hermes~/.hermes/skills/~/.hermes/config.yamlユーザーレベルのみ
OpenCode~/.config/opencode/skills/~/.config/opencode/opencode.json.opencode/skills/、opencode.json
Kiro~/.kiro/steering/~/.kiro/settings/mcp.json.kiro/steering/、.kiro/settings/mcp.json

選択した連携機能のみをインストールします。

npx memtrace-skills install --only codex,windsurf,vscode,hermes,opencode,kiro

対応している環境では、プロジェクトローカルの設定をインストールします。

npx memtrace-skills install --only codex,vscode,opencode,kiro --local
その他の MCP クライアント

Cline、Roo Code、または MCP ツールだけが必要なクライアントの場合は、次のサーバーを手動で追加します。

{
  "mcpServers": {
    "memtrace": {
      "command": "memtrace",
      "args": ["mcp"],
      "env": {}
    }
  }
}
エディター設定ファイル
Windsurf~/.codeium/windsurf/mcp_config.json
VS Code(Copilot)プロジェクトルートの .vscode/mcp.json
Codex~/.codex/config.toml または .codex/config.toml
Hermes~/.hermes/config.yaml
OpenCode~/.config/opencode/opencode.json またはプロジェクトの opencode.json
Kiro~/.kiro/settings/mcp.json または .kiro/settings/mcp.json
Cline拡張機能パネルの Cline MCP 設定
アンインストール
memtrace uninstall      # removes skills, MCP server, plugin, settings
npm uninstall -g memtrace

先に npm uninstall を実行済みの場合は、クリーンアップスクリプトが ~/.memtrace/uninstall.js にあります。

node ~/.memtrace/uninstall.js
インストール時のトラブルシューティング

npm install -g memtrace では、小さなメインパッケージとプラットフォーム固有のバイナリ(@memtrace/darwin-arm64、@memtrace/linux-x64、@memtrace/win32-x64 のいずれか)がインストールされます。memtrace start で "Could not find binary for your platform" と表示された場合:

# Re-run install, asking npm to keep optional deps
npm install -g memtrace --include=optional

# Or refresh from latest
memtrace install         # built-in self-update
npm install -g memtrace@latest --force

# Or install the platform binary directly (Apple Silicon shown — swap for your platform)
npm install -g @memtrace/darwin-arm64

これは通常、npm がオプションの依存関係をスキップするよう設定されているマシン(企業の npmrc、一部の CI キャッシュなど)でのみ発生します。


言語

プログラミング言語: Rust · Go · TypeScript · JavaScript · Python · Java · C · C++ · C# · Swift · Kotlin · Ruby · PHP · Dart · Scala · Perl · Lua — 関数、クラス、型、呼び出し、複雑度を含む完全な AST。

インフラストラクチャと設定: YAML · HCL / Terraform · JSON · TOML · SQL(RLS 用の PostgreSQL CREATE POLICY を含み、ポリシーから Drizzle / Prisma / TS スキーマシンボルへの言語横断エッジに対応)。

AST レイヤー上の、フレームワークを考慮したスキャナー:

  • バックエンド HTTP: Express · NestJS · Encore · Fastify · Vapor · Hummingbird · FastAPI · Flask · Django · Gin · Chi · Echo · Actix · Lapis · Kong · OpenResty · Rails ルート
  • フロントエンド / クライアント: RTK Query · TanStack Query · SWR · URLSession · AsyncHTTPClient · axios · fetch · SwiftUI ビュー
  • CI / インフラ: GitHub Actions ワークフロー(ジョブ、ステップ、needs: エッジ) · Terraform 変数 / モジュール / データソース · Helm チャート · K8s マニフェスト
  • パッケージと依存関係のグラフ: package.json のスクリプト + 依存関係 · Cargo.toml の依存関係 · pyproject.toml(可能な範囲で対応)
  • データベース: PostgreSQL RLS ポリシー + トリガー + 関数。ORM スキーマへのヒューリスティックなエッジにも対応

要件

Memtrace はローカルで実行されます。初回のインデックス作成は CPU と RAM を多く使用しますが、その後のクエリと増分インデックス作成の負荷は大幅に軽くなります。

最小要件推奨要件
CPU4 コア大規模なモノレポでは 8 コア以上
メモリ8 GB RAM16~32 GB RAM
ディスク5 GB の空き容量10~20 GB の空き容量
GPU不要不要
Node.js≥ 18現行の LTS
Git時系列分析に必要最良の結果を得るにはリポジトリの全履歴

テレメトリ

v0.3.17 以降、Memtrace にはオプトアウト方式のテレメトリが含まれており、誰かが問題を報告する前にクラッシュ、リグレッション、パフォーマンスの問題を検出するのに役立ちます。

  • 収集されるデータ: アプリ起動イベント、インデックス作成 / 埋め込みの所要時間、パニックレポート、Memtrace 独自のクレートからの WARN / ERROR ログ行。
  • 収集されないデータ: ソースコード、ファイルの内容、シンボル名、埋め込み、リポジトリ名やパス、ブランチ名、コミットデータ。
  • サニタイズ: すべてのペイロードは、ディスクに保存される前にサニタイザーを通過し、ホームディレクトリのパス、トークン形式の文字列、メールアドレスが除去されます。

環境変数を 1 つ設定すると無効にできます:

MEMTRACE_TELEMETRY=off memtrace start                    # per-run
export MEMTRACE_TELEMETRY=off                             # permanent (~/.zshrc, ~/.bashrc)

または、エディターの MCP 設定に "env": { "MEMTRACE_TELEMETRY": "off" } を指定してください。

ディスク上のキューの構成、受信側でのデータの保存先、送信される内容の確認方法を含む詳細は、TELEMETRY.md をご覧ください。


ライセンスと所有権

プロプライエタリな EULA。 プライベートベータ期間中および一般公開後も、個人の開発者は無料で利用できます。インデクサー + データベース(MemDB)はクローズドソースです。

benchmarks/ のベンチマークスイートは MIT ライセンスです。完全に再現可能で、実行にプロプライエタリなコードは必要ありません。


memtrace.io  ·  Discord  ·  npm  ·  問題

Syncable が開発 · デンマーク、コペンハーゲン 🇩🇰

MseeP.ai Security Assessment Badge

コメント

MCP は初めてですか?

プロトコルの概要から最初のサーバーの導入まで、よくある疑問にまとめて答えます。

AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。