dsh-har-triage:离线 HAR 诊断与最小化证据回传

前言

在 DeepSeek Harness(DSH)里让智能体帮忙查前端或接口问题时,常见做法是直接把 HAR、完整 URL、Cookie 或响应正文丢进对话。这样排障快,但敏感信息也容易一并进入模型上下文。若你已有浏览器导出的 HAR 1.2,更希望在本机完成归类与筛选,只把可回查索引的观测证据交给 Agent,可以看一下社区插件 dsh-har-triage(维护者 po-et)。它在社区目录 skillhub.cn 中归类为「模型推理」相关能力;仓库当前星标为 0,许可证为 MIT。

这是什么

dsh-har-triage 是 DSH 上的离线网络证据插件:读取本地已有 HAR,不录制流量、不发起请求、不修改原文件,生成可离线打开的 HTML 报告,并在工具结果中最多返回 20 条证据条目(其余以省略数量说明)。完整数值投影保留在本机 JSON/HTML 中;报告里的 Request #43 对应原 HAR 的 log.entries[42],端点别名刻意不暴露真实路径名,便于你在本地用索引回查真实请求。

核心功能

下面介绍插件在 README 中明确列出的能力。

分析与报告

  1. 解析 HAR 1.2(UTF-8,单文件最多 16 MiB、10,000 条 entry);仅分析 HTTP/HTTPS,其他协议会计入排除统计。
  2. 按方法/源/路径将请求分组为端点别名(查询串与 fragment 不参与分组);GET 与 get 因大小写不同会分到不同别名。
  3. 突出 HTTP 4xx/5xx、status: 0(未记录到有效 HTTP 响应)、慢请求与长等待阶段;慢请求阈值默认 2000 ms,可在每次调用时配置。
  4. 输出自包含 HTML 报告:信号 → 请求行 → 各阶段耗时;支持离线筛选、分页与源定位器。同步有 JSON 报告。

交给 Agent 的证据边界

工具向 Agent 返回的条目经过白名单投影,不是脱敏后的完整 HAR,也不保证匿名化。README 与 SECURITY 说明:保留源 entry 索引、顺序化端点别名、受控的方法/状态/内容类型分类、相对偏移、数值时长与大小、固定诊断码;移除完整 URL、查询值、请求头、Cookie、正文、页面标题、绝对时间戳、原始错误文案等。状态码与耗时是观测,插件不替你做根因断言(例如 503 只表示抓包里记录了服务端错误响应,不证明具体服务或 CORS、令牌过期)。

与同类工具的关系

net-debug 提供 Harness 内 HTTP 客户端、历史与 HAR 导出;harlite 提供较完整的 HAR 分析、SQL、瀑布图与 HTML。本插件定位更窄:Harness 原生、无外部二进制、面向 Agent 辅助排障的允许列证据路径。

安装与启用

环境要求:Node 22.19+。插件以当前 DSH 进程权限运行,安装前请自行审阅 GitHub 源码 与 MIT 许可证。

在选定 Profile 中安装预构建包(版本以发布页为准,当前资料为 v0.1.0):

dsh plugin --profile YOUR_PROFILE add https://github.com/po-et/dsh-har-triage/releases/download/v0.1.0/dsh-har-triage-0.1.0.tgz
dsh --profile YOUR_PROFILE --dump-config

确认配置中出现 har-triage 行后,启动该 Profile,将 HAR 放入对应 session workspace。卸载:

dsh plugin --profile YOUR_PROFILE remove dsh-har-triage

典型用法

在 Harness 中调用

启动 Profile 后,可将 HAR 放在 workspace 内,向 Agent 说明意图。README 示例提示词:

Inspect capture.har with har_triage. Save reports in a new har-review directory. Explain the measured evidence and cite the original HAR entry indexes. Do not guess root causes.

工具参数示例:

{"input":"capture.har","outputDir":"har-review","slowMs":2000}

工具依赖 Harness 文件系统与沙箱:须在 session workspace 内读写;输出目录若已存在则不会覆盖已有报告文件;越界路径会被拒绝。

不用 Harness 的 CLI

分析模块仅使用 Node 内置能力。在源码目录下(非 git clone 场景下若你已有检出)可执行:

node src/cli.js capture.har --out new-report-directory --slow-ms 2000

输出目录必须尚不存在;原 HAR 不会被改动。打开 new-report-directory/report.html 查看报告。

可复现的合成示例:

npm run demo

会在 artifacts/ 下生成合成抓包与报告,不代表真实用户流量。

适用场景与注意

适合: 已有 DevTools 等方式导出的 HAR,希望在本机标出失败、慢请求与等待阶段,再让 DSH Agent 结合 entry 索引做解释,且默认不把 URL、Cookie、正文交给模型。

限制(摘自 README): 仅 HAR JSON 1.2;无效 entry 会以固定错误失败,而非静默截断;若 HTML 生成在 JSON 之后失败,会保留 JSON 并报告部分结果,需换新目录重试;无上传、重放、自动查源或改原文件。分组与状态模式仍可能识别应用,共享报告前请自行判断。

开发验证: 维护者在 Node 24/26 上跑过 48 项测试,并在 Harness 0.2.0-rc.2 与 0.2.1-alpha.2 上通过打包安装与 har_triage 冒烟;peer 依赖版本见仓库 package.json。

结尾

dsh-har-triage 把「读本地 HAR → 离线报告 → 少量可回查证据进 Agent」串成一条 Harness 内路径,适合在不愿把完整网络抓包交给模型时做第一轮归类。目录页:https://www.skillhub.cn/plugins/po-et/dsh-har-triage;源码与说明:https://github.com/po-et/dsh-har-triage。

羽毛球分组比赛记分
小程序二维码

欢迎使用《羽毛球分组比赛记分》微信小程序

小夜