用途:Trace Explorer 是 NVIDIA OO Agents 的轨迹分析工具,由 CLI 与 Python 库组成,专为智能体驱动的根因分析设计。它输出适合 LLM 阅读的文本或 JSON,支持搜索、对比和实验级聚合,本身不是 Agent,而是由编码智能体驱动的工具。
数据来源:本地 OTLP .jsonl 轨迹文件,或运行中的 viewer(按会话或按实验)。它不直接打开 traces.db,viewer 数据经 HTTP API 获取。
主要能力:采用渐进式披露策略,从概览到错误、会话、轮次、搜索逐层深入。CLI 示例:uv run trace-explorer trace.jsonl 查看概览;--errors 或 --first-error 查看错误;-s 278a10 查看某会话轮次(ID 可用 6 字符前缀);-s 278a10 -t 0 查看单轮上下文窗口、LLM 输出与执行结果;--search "Timeout" 做正则或文本搜索。其他标志包括 --timeline、--eval、--json、-v、-q、--raw <span_id>、--diff other.jsonl、--api-help。
连接运行中的 viewer:uv run trace-explorer --viewer http://localhost:5001 --session-id <ID>,可加 --errors、-s <SID> -t 0、--span-id <SPAN>。实验级分析:--experiment <ID> 查看通过率与下钻命令,--errors 查看失败会话中的 Python 异常,--failures 查看无异常的错答失败,--json 输出机器可读的全部测试与 session_ids。--errors 指崩溃,--failures 指错答。
Python API:TraceExplorer 支持完整解析,from_file、from_viewer、load_experiment_sessions 加载数据,提供 get_overview、get_errors、get_session、get_turn、search、get_timeline、find_first_error、diff 等方法,每个文本方法都有返回 dataclass 的结构化版本(如 get_overview_data),并有 agent_count、max_agent_depth、get_method_counts、get_recursion_pattern 等统计辅助。
超大轨迹(超过 10 万 span 或 GB 级)可用 TraceExplorerClient 薄客户端,将分析委托给 viewer 服务器(/api/explorer/*,结果服务端缓存),方法包括 get_summary、get_agent_spans、get_error_spans、search_fast(SQLite FTS5 全文搜索)、get_session_fast、get_turn_fast、get_overview。
典型工作流:失败评测运行按 --experiment 到 --session-id --errors 再到 -s -t 定位出错轮次;无异常但行为异常时用 overview 到 get_session 再到 get_turn 查看模型实际看到的上下文;两次运行回归用 --diff 查看首个分歧点与调用图差异;溯源用 --search 加 --raw。
限制与提示:会话 ID 可缩写为 6 字符;--install-skill 可将内置技能复制到 ~/.claude/skills/trace-explorer/;入口为 trace-explorer 控制台脚本或 python -m nooa.trace_explorer,没有 nooa 子命令;from_file 会拒绝评测产物文件(文件名含 .006eval. 或 *.noo-eval.jsonl 无法通过 span 校验),应指向会话轨迹而非评测附属文件;推理内容默认显示,可用 --no-reasoning 隐藏。相关技能:nooa-capturing-traces 生成 .jsonl 文件,nooa-trace-viewer 提供 Web UI 与服务器。