关于 session-report
这是一个 Claude Code 技能,可将 Claude Code 会话用量数据整理为独立的 HTML 报告。报告依据分析结果展示用量细分,并附上简要发现和建议。
主要功能
- 01分析指定时间段的会话用量
- 02在 HTML 模板中呈现 JSON 指标
- 03结合数据简述发现
- 04添加与报告数据相关的建议
适用场景
- 01查看近期 Claude Code 令牌用量
- 02比较不同项目和技能的用量
- 03发现缓存中断或异常大的提示词
- 04保存便于分享的 HTML 用量报告
安装
复制下面的命令,在终端中运行。
$
npx skills add https:/ / github.com/ anthropics/ claude-plugins-official --skill session-report安装后在 Claude Code 中输入/session-report确认已加载。
附带文件analyze-sessions.mjstemplate.html
详细介绍
会话报告
生成一份自包含的 Claude Code 使用情况 HTML 报告,并保存到当前工作目录。
步骤
-
获取数据。 运行捆绑的分析器(默认窗口:最近 7 天;如果用户传入了其他范围,如
24h、30d或all,则以该范围为准)。脚本analyze-sessions.mjs与本 SKILL.md 位于同一目录 —— 请使用其绝对路径:node <skill-dir>/analyze-sessions.mjs --json --since 7d > /tmp/session-report.json若要统计全部时间,请省略
--since。 -
读取
/tmp/session-report.json。浏览overall、by_project、by_subagent_type、by_skill、cache_breaks、top_prompts。 -
复制模板(同样与本 SKILL.md 捆绑在一起)到当前工作目录中的输出路径:
cp <skill-dir>/template.html ./session-report-$(date +%Y%m%d-%H%M).html -
编辑输出文件(使用 Edit,而非 Write —— 保留模板的 JS/CSS):
- 将
<script id="report-data" type="application/json">的内容替换为第 1 步得到的完整 JSON。页面的 JS 会根据这个数据块自动渲染主统计数字、所有表格、条形图和下钻明细。 - 用 3–5 条单行发现填充 `` 块。尽可能将数字表示为占总 token 的百分比(总数 =
overall.input_tokens.total + overall.output_tokens)。每条发现一行,使用精确标记:
类名:<div class="take bad"><div class="fig">41.2%</div><div class="txt"><b>cc-monitor</b> consumed 41% of the week across just 3 sessions</div></div>.take bad用于浪费/异常(红色),.take good用于健康信号(绿色),.take info用于中性事实(蓝色)。.fig是一个简短的数字(百分比、计数,或像12×这样的倍数)。.txt是一句平实的英文句子,指明项目/技能/提示词;用<b>包裹主体。关注:某个项目或技能占据不成比例的份额、缓存命中率 <85%、单个提示词 >2% 总计、子代理类型平均 >1M token/次调用、缓存中断聚集。 - 用 1–4 条
<div class="callout">建议填充 `` 块(位于页面底部),建议需与具体行相关(例如“/weekly-status为占总计 8.1% 的任务生成了 7 个子代理 —— 将其范围缩小到更少的并行代理”)。 - 不要重构现有区块。
- 将
-
向用户报告保存的文件路径。不要打开或渲染它。
备注
- 模板是交互功能(排序、展开/折叠、块字符条形图)的来源。你的工作是数据 + 叙述,而非标记。
- 保持评论简洁且具体 —— 引用 JSON 中实际的项目名称、数字、时间戳。
top_prompts已包含子代理 token,并将任务通知的后续内容归并到原始提示词中。- 如果 JSON 大于 2MB,请在嵌入前将
top_prompts裁剪到 100 条、cache_breaks裁剪到 100 条(它们本应已被限制)。
评论
支持 Markdown