mcpField
S
stats

stats

github.com/mem0aiエージェントワークフロー68.0k93 回インストール2 日前に更新
リポジトリ

stats について

Mem0 のセッションおよびプロジェクト全体のメモリ統計を表示するスキルです。週次の活動ダイジェストにも対応します。

主な機能

  1. 01セッションの追加・検索件数
  2. 02カテゴリ別のプロジェクトメモリ数
  3. 03メモリの経過期間の内訳
  4. 04週次活動ダイジェスト

活用シーン

  1. 01セッション中のメモリ活動の確認
  2. 02プロジェクトメモリのカテゴリ確認
  3. 03過去1週間のメモリ変更の集計

MCP 対応

Mem0 MCP ツールでメモリを取得し、検索の往復時間を測定します。

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/mem0ai/mem0 --skill stats

インストール後、Claude Code で/statsを入力して読み込まれたか確認します。

詳細

Mem0 統計

セッションおよび累計のメモリ統計を表示します。

実行

ステップ 1:セッション統計を収集する

セッション統計レポーターを実行します。

SCRIPT_DIR="${CLAUDE_PLUGIN_ROOT:-${CODEX_PLUGIN_ROOT:-${CURSOR_PLUGIN_ROOT:-}}}/scripts"
python3 "$SCRIPT_DIR/session_stats.py" peek 2>/dev/null || echo "{}"

peek コマンドは、統計ファイルをクリアせずに JSON を返します(report とは異なります)。

スクリプトが空の結果を返すかエラーになった場合は、「セッションデータがありません」と記載して続行します。

ステップ 2:API から累計およびセッション統計を取得する

累計統計: get_memories を呼び出して、このプロジェクトのすべてのメモリを取得します。

filters={"AND": [{"user_id": "<active_user_id>"}, {"app_id": "<active_project_id>"}]}, page_size=100

次の項目でグループ化します。

  1. categories[0](プラットフォームによる割り当て) — 主なグループ化
  2. metadata.type(エージェントによる割り当て) — カテゴリーがない場合の副次的なグループ化
  3. created_at の日付 — 経過期間の分析用

カテゴリーの正規化: auto_capture と uncategorized を統合し、単一の uncategorized 行にします。これらは、プラットフォームが有意なコンテンツカテゴリーを割り当てなかったメモリです。表に auto_capture を独立した行として表示しないでください。

セッション統計(ローカルのみ): セッション統計は、ステップ 1 で読み取るローカル統計ファイルから取得します。run_id または metadata.session_id のフィルターを使って API に問い合わせないでください。メモリは run_id なしで保存され、session_id のメタデータフィルターも一貫性がないため、信頼できない結果が返されます。

ローカル統計ファイルは、現在のセッションの追加と検索を正確に記録します。

また、query="project"、filters={"AND": [{"user_id": "<active_user_id>"}, {"app_id": "<active_project_id>"}]}、top_k=1 を指定して search_memories MCP ツールを呼び出し、往復レイテンシを測定します。MCP 呼び出しの前後の時刻を記録してください。API への直接の HTTP 呼び出しは試みないでください。

ステップ 3:表示する

最小限のダッシュボードを表示します。ASCII の棒グラフは使わず、すっきりした表形式にします。

## mem0 stats

**Session** (<session_id, first 12 chars>) — 3 written, 5 searches, categories: decision, convention

**Project: my-project** — 55 memories, API: 84ms

| Category             | Count |
|----------------------|-------|
| decision             |    24 |
| convention           |    15 |
| anti_pattern         |     6 |
| task_learning        |     5 |
| user_preference      |     3 |
| session_state        |     2 |

**Age** — oldest: 2026-02-15, newest: 2026-05-23
  < 7 days: 5 · 7–30d: 12 · 30–90d: 10 · > 90d: 8

**Identity** — user: kartik · project: my-project · branch: main

表示ルール:

  • カテゴリー表:件数の降順で並べ、メモリが 0 件のカテゴリーは省略する
  • 経過期間:created_at から算出した、ドットで区切ったバケットを 1 行で表示する
  • セッション行:セッションデータがない場合は省略する
  • メモリの合計が 1~2 件のみの場合は、カテゴリー表を省略して件数だけを表示する
  • 全体をコンパクトに保ち、装飾的な枠線や埋め草は使わない

週次ダイジェストモード

--weekly を指定して呼び出された場合(例:/mem0:stats --weekly)、標準の統計ダッシュボードの後に週次アクティビティダイジェストを追加します。

W1:最近のメモリを取得する

期間を指定した次のクエリで、search_memories を並列に呼び出します。

  1. query="decisions made this week"、filters={"AND": [{"user_id": "<id>"}, {"app_id": "<pid>"}, {"created_at": {"gte": "<7 days ago YYYY-MM-DD>"}}]}、top_k=20
  2. query="bugs errors fixes"、同じ期間フィルター、top_k=20
  3. query="patterns conventions learnings"、同じ期間フィルター、top_k=20
W2:分析する

ID で統合します。categories[0] または metadata.type で「今週の新規」にグループ化します。次の項目を算出します:過去 7 日間に追加されたメモリ数、最もアクティブなカテゴリー、最もアクティブな日。

W3:表示する

標準の統計の後に追加します。

### This week (May 16 – May 23)

+12 memories — most active: Wednesday (5)

| Category      | New |
|---------------|-----|
| decision      |   5 |
| task_learning |   4 |
| bug_fix       |   3 |

**Highlights**
- <2-3 sentence summary of most important decisions/learnings this week>
W4:ダイジェストファイルを書き込む

~/.mem0/weekly-digest.md に書き込みます(上書き)。~/.mem0/digest-history.log に 1 行追記します。

<YYYY-MM-DD> | <project_id> | +<new_count> memories | top: <top_category>
W5:空の状態

過去 7 日間に新しいメモリがない場合:

No new memories in the past week. Total: <N> memories in <project_id>.

コメント