mcpField
S
stats

stats

github.com/mem0aiAgent 工作流68.0k93 次安装2 天前更新
代码仓库

关于 stats

用于查看 Mem0 会话和项目级记忆统计的技能,并可生成每周活动摘要。

主要功能

  1. 01查看会话添加与搜索次数
  2. 02按类别统计项目记忆
  3. 03查看记忆时间分布
  4. 04生成每周活动摘要

适用场景

  1. 01检查会话中的记忆活动
  2. 02查看项目记忆类别分布
  3. 03汇总过去一周的记忆变化

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(Agent 分配)——没有类别时的次要分组依据
  3. created_at 日期——用于分析记忆时长

**类别归一化:**将 auto_capture 和 uncategorized 合并为一个 uncategorized 行。这些记忆没有被平台分配有意义的内容类别。请勿在表格中将 auto_capture 显示为单独一行。

会话统计信息(仅本地): 会话统计信息来自步骤 1 中读取的本地统计文件。请勿使用 run_id 或 metadata.session_id 筛选条件查询 API——由于记忆存储时不带 run_id,且 session_id 元数据筛选结果不一致,这些查询会返回不可靠的结果。

本地统计文件会准确记录当前会话的添加和搜索次数。

同时调用 search_memories MCP 工具,使用 query="project" 和 filters={"AND": [{"user_id": "<active_user_id>"}, {"app_id": "<active_project_id>"}]}、top_k=1,测量往返延迟。记录 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-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 中追加一行:

<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>.

评论

支持 Markdown