汇总多次会话、多台机器上的 Claude Code 用量,结合对话、工具调用和文件差异,看清智能体做了什么、修改了什么,以及消耗了哪些资源。
By 吴晟 | Saturday, September 12, 2026
英文原文:Beyond Replay: Metrics and Change Detection for Your Claude Code Sessions。
用 Claude Code 完成一项任务后,除了查看最终结果,你可能还想弄清楚:Token 主要花在哪个模型、哪台机器上?主智能体和子智能体各自消耗了多少?某个文件被反复修改的过程中,用户提出了什么要求,智能体又执行了哪些操作?
上一篇文章介绍了如何回放本机已有的 Claude Code 会话:阅读消息、查看工具调用,以及跟随子智能体的执行记录还原任务过程。当时,远程观测和指标看板还在计划之中。
现在,你可以在回放之外进一步查看用量指标,并追踪会话中记录到的文件变更。这样,回顾 Claude Code 的工作就有了三个相互补充的视角:它做了什么,工作期间哪些文件发生了变化,以及它消耗了哪些资源。
SkyWalking 擅长把分散在不同任务、不同机器上的观测数据汇总起来,让你既能看整体趋势,也能检查具体执行过程。用量可以跨会话和机器分析,采集到的会话可以集中查询、分享,文件差异则保留关联的工具调用和采集来源。下面以我们自己的开发过程为例,看看这些信息如何帮助理解 Claude Code 的工作。
先看整体:Token 用在了哪里
单个会话能解释一项任务的执行细节。想了解几天甚至几周的使用情况,则需要把多次会话、多台机器上的用量放到一起看。这也是指标看板的价值:无论是个人回顾一周的开发,还是团队了解整体使用情况,都可以在统一的统计视角下比较。
AI Agent Overview(AI 智能体概览)提供按天和按小时展示的 Token 热力图,以及用量汇总和上报智能体的用量排名。哪些时段比较忙、哪些智能体上报的 Token 最多,都可以从这里开始了解,再决定要深入查看哪一部分。
图 1:从天和小时两个尺度观察 Token 用量。图表底部会注明统计范围;截图中的热力图统计了 9 个上报服务里用量最高的 8 个。
进入具体智能体的看板后,还可以按 Token 类型、模型,以及主智能体和子智能体分别查看用量,并观察缓存读取占比。输入、输出、缓存读取和缓存创建各自展示,便于看清一个较大的 Token 总量究竟由哪些部分构成。同样的指标也可以按运行实例(Agent runtime)查看,例如单独观察某台机器上运行的采集器所上报的数据。
假如最近的用量明显增加,可以先比较各模型的变化,再看主智能体和子智能体各自消耗了多少,以及增长主要来自哪类 Token。如果需要继续缩小范围,再进入运行实例的看板,查看具体机器的情况。这既适合团队了解多台机器上的使用情况,也方便个人回顾一周的开发用量。
看板能展示哪些指标,取决于采集的数据来源。已有的 Claude Code 会话记录可以提供部分 Token 指标。 配置 Claude Code 自带的遥测导出器后,还能展示按模型统计的费用、活跃时长、新建会话数、增删行数、提交和 PR 数量,以及编辑权限请求的接受或拒绝情况。这些额外图表会在相应指标上报后出现,系统不会根据对话内容估算缺失的数值。
AI 智能体看板指南介绍了各项指标的含义和采集方式。配置时需要选择一条 Token 上报路径,避免同一批活动被重复计数。另外,概览中的服务名称来自实际上报的遥测数据,不代表会话回放已经支持所有这些智能体。目前实现的会话适配器仍是 Claude Code,Codex 和 LangChain/LangGraph 适配器还在计划中。
从用量趋势回到具体会话
发现某个时段或智能体值得进一步查看后,可以进入 Conversations(会话)页签,查找相关的工作记录。会话查询有自己的时间范围,还可以按运行实例、标题文字或会话 ID 筛选;找到目标后,在独立页签中打开。
图 2:打开会话之前,就能先了解其中的对话轮次、模型调用、子智能体、Bash 执行和文件变更记录数量。
这里延续了上一篇介绍的回放体验:对话内容与执行时间线并排展示,可以进入子智能体的工作记录,也可以展开某次工具调用,查看请求、结果及对应的来源记录。现在,这些操作都能在 SkyWalking 控制台中完成。页面地址还会保留当前选中的对话轮次、步骤和执行流,具备相应访问权限的同事打开链接后,就能查看同一位置。
看板帮助你发现一段时间内的用量变化,会话则保留一项任务中的具体请求、回复和操作。选好要查看的智能体,再在会话查询中设置相关时间范围,就可以查找值得检查的任务。记录集中保存后,自己回顾或与同事讨论时,都可以直接打开同一段执行过程,无需到原来的机器上寻找记录。
不只看最终差异,还能沿着文件查看修改过程
回放中现在也包含了工作区的变更记录。你可以把智能体说过的话、执行过的工具,以及文件中发生的修改放在一起查看。
点击会话顶部的 Changes(变更)计数,就会打开整个会话的文件变更列表。文件按工作区根目录分组,每个文件下面保留各次变更记录。选择一条记录,即可跳转到关联的工具执行步骤,打开变更详情。
图 3:这次开发会话记录了 93 条变更,涉及 39 个文件。点击关联记录,可以进入相应的工具执行步骤。
截图里的任务,恰好就是为本文展示的智能体看板和变更查看功能做开发。文件列表中既有方案文档,也有看板模板、使用文档和更新日志。同一文件的多次修改都保留在对应路径下面,查看它如何随着任务推进而变化,比在整段对话里逐一搜索文件名更方便。
这里的数量表示采集到的变更记录数。一个文件可能被多个工具调用反复修改,同一次调用也可能由不同来源分别记录,因此增删行数可能包含对同一段内容的多次修改。查看过程时可以逐条展开差异;要确认工作结束后的最终净变化,仍应以 Git diff 为准。
工具卡片和时间线上的步骤也会显示变更标记。展开卡片,可以看到文件路径、操作类型和增删行数;继续展开文件,就能阅读逐行差异。较长的内容还可以放到更大的详情面板中,与会话对照查看。
图 4:一次 Write 操作修改了方案文档。详情面板保留补丁内容、采集来源和时间,并提供查看来源记录的入口。
这条差异记录的是检查代码仓库之后对方案的调整。旁边的对话仍然保留着用户的要求和智能体的回复,因此可以一边看改了什么,一边回顾修改之前的讨论,再进一步检查实际执行的工具请求和结果。
这些信息的价值在于保留可检查的依据:变更通过 tool-use ID(工具调用标识)与具体执行步骤关联,每条记录也保留自己的采集来源。你可以从文件差异回到工具请求、结果和来源记录,区分 Claude Code 自身报告的补丁与 Shell 命令执行前后扫描工作区得到的变化。具体操作见会话回放文档。
Shell 命令和子智能体的修改也能纳入查看
和上一篇一样,采集已有 Claude Code 历史记录,无需在 Claude Code 中安装插件或修改配置。成功执行的 Edit、Write 等编辑调用,本身就可能带有原生补丁,Sessionizer 会在采集时提取这些记录。如果数据由较早版本采集,需要重新采集才能补充变更记录,仅用新版界面打开旧数据还不够。
如果希望进一步查看脚本执行期间和子智能体任务中的修改,可以安装可选的 asz-changes 插件。它会在 Bash、PowerShell、Monitor 等 Shell 工具执行前后扫描工作区,并采集子智能体报告的编辑补丁。这些变化会进入同一套查看界面。Shell 的前后快照只能在插件安装后、实际观测到相应操作时产生,无法事后为过去的命令补录。
记录也会说明采集范围和限制。多个工具的执行时间重叠时,相关变更可能标为 shared(共享);在工具调用之间发现的变化,会单独列在 Changes outside observed tool windows(工具观测窗口之外的变更)中。某次扫描被跳过、只完成了一部分,界面也会说明;二进制文件或体积过大的文件,可能只保留路径和哈希值,没有文本差异。
这些信息有助于判断记录能说明什么。一次扫描能够确认观测时段内发生了哪些变化;如果期间还有其他并发操作,就不能把所有修改都归因于某一次工具调用。保留来源并明确不确定的范围,才能据此检查执行过程。完整规则见插件指南。
沿用熟悉的开发方式
这些能力可以接入现有的终端、编辑器和 Git 工作流程。你仍然照常使用 Claude Code、审查和提交代码,Sessionizer 读取保留下来的会话记录,补充用量和执行过程的查看方式。
可以先在本机使用;需要更完整的变更记录时,再启用可选插件。asz-changes 在本机写出变更记录,采集过程不依赖 Sessionizer 服务或远端连接;Sessionizer 再读取这些输出。是否把数据导出到中心服务,则取决于你是否需要跨机器汇总或与团队一起查看。
用自己的 Claude Code 会话试一试
本文介绍的是面向 AI Sessionizer 0.3.0、OAP 11.1 和 Horizon UI 1.1 的开发中功能。Sessionizer 负责采集本地记录并导出到 SkyWalking,OAP 负责存储,Horizon 提供看板和会话查看界面。会话、工具调用与文件变更之间的关联会随采集数据一起保留。
想先在本机体验,可以按照快速开始指南构建 Sessionizer,然后在项目目录中运行:
./bin/asz server
打开 http://127.0.0.1:8787 即可查看。这里的启动命令与上一篇有所不同:现在由 asz server 同时运行采集和本地查看服务,asz view 则用于读取已经采集的数据。
如果还需要采集 Shell 和子智能体的额外变更,在 Sessionizer 项目目录中,用以下方式启动一个新的 Claude Code 会话:
claude --plugin-dir plugins/claude-code
要让团队集中查看这些数据,需要在 asz.yaml 中配置 export.otlp.endpoint,并使用兼容的 OAP、Horizon 开发版本。具体步骤见导出指南和后端会话配置指南。再根据前面的看板指南选择指标来源,就可以进入 SkyWalking 的 AI Agents 页面查看。
不妨从自己熟悉的一段 Claude Code 工作记录开始:查看用量,打开一次会话,再展开它记录的文件修改。随着任务和机器增多,你仍然可以在同一处了解整体使用情况,回到具体的对话、工具调用和差异,检查智能体做了什么、工作期间修改了什么,以及消耗了哪些资源。