前言¶
在 DSH 里长时间跑智能体或本地任务时,任务栏或系统自带的瞬时占用率往往只能回答「此刻忙不忙」,很难回答「过去几小时是不是一直顶在阈值上」「内存是不是长期接近打满」「CPU 负载高时频率是否被压下去」。需要盯实时仪表盘,也容易漏掉间歇性但持续的问题。
下面介绍社区插件 dsh-resource-monitor(维护者 XiaoLuoMin,GitHub:XiaoLuoMin/dsh-resource-monitor)。它是 DeepSeek Harness(DSH)的客户端侧栏插件:每分钟采样一次本机资源,保留约 30 天历史,用「连续超阈值多久」来归纳长期高占用、内存吃紧和降频,而不是只展示需要一直盯着的实时仪表。
这是什么¶
dsh-resource-monitor 在 DSH 侧栏增加 tab「资源监控」,会话标题栏也有对应入口。Host 端负责采样与持久化,Client 端负责图表、结论与异常列表;数据落在用户目录下的 JSONL 文件中。插件面向 Windows 本机(频率等指标依赖 Windows 性能计数器),在 community 目录中归类为客户端插件。
核心功能¶
界面与刷新¶
侧栏打开「资源监控」后,面板自上而下大致为:
- KPI 行:当前 CPU、当前内存(已用/总量 GB)、当前频率。
- 结论框:所选时间区间的平均/峰值,以及超阈值累计分钟、降频分钟等摘要。
- CPU 曲线(含 85% 告警参考线)。
- 内存曲线(含 90% 告警参考线)。
- 频率曲线(含 70% 降频参考线)。
- 异常列表(近 7 天事件)。
支持 24 小时 / 7 天 视图切换,界面约 30 秒 自动刷新;快照由 Host 提供 API(README 中说明为 POST /api/resource-monitor.snapshot)。
采样与保留¶
| 项目 | 规则 |
|---|---|
| 采样间隔 | 60 秒 |
| 历史保留 | 30 天(samples.jsonl,追加写入) |
| CPU 告警 | ≥ 85%,且连续 ≥ 10 分钟 |
| 内存告警 | ≥ 90%,且连续 ≥ 10 分钟 |
| 降频告警 | CPU ≥ 50% 且频率 ≤ 最高频率的 70%,且连续 ≥ 5 分钟 |
数据来源说明¶
- CPU / 内存:Node
os.cpus()时间差、os.totalmem()/os.freemem()。 - 频率:Windows 性能计数器
\Processor Information(_Total)\% of Maximum Frequency。 - 磁盘读写、网络速率仍会写入历史(分别来自
\PhysicalDisk(_Total)与Get-NetAdapterStatistics的采样),但当前版本不再在侧栏绘图(1.1.1 变更:移除磁盘与网络曲线)。
磁盘与网络相关数值每次采样会启动一个 powershell.exe 子进程(约 2–4 秒,异步,不阻塞 UI)。
不采集温度¶
Windows 上读取 CPU 核心温度通常需要内核驱动。本插件不附带、也不加载驱动,改用「当前频率相对最高频率的比例」推断降频,README 说明该信号直接反映降频事实,且不需要驱动或提权。
安装与启用¶
在已配置 DSH desktop profile 的环境中,按 README 安装:
dsh plugin --profile desktop add github:XiaoLuoMin/dsh-resource-monitor
安装完成后重启 DSH 应用,以便 Host 与 Client 两半都重新加载插件。
卸载:
dsh plugin --profile desktop remove dsh-resource-monitor
package.json 中当前版本为 1.1.2,许可证 MIT;运行环境要求 Node ^22.19.0 || >=24.0.0,peer 依赖 @deepseek-ai/cordis ~4.0.4。
典型用法¶
- 按上一节命令安装并重启 DSH。
- 在侧栏选择「资源监控」,或在会话标题栏使用入口按钮。
- 在 24h / 7d 之间切换,查看 KPI、结论框与三条资源曲线。
- 在异常列表中查看近 7 天内符合规则的 CPU 长时间高占用、内存接近上限、负载下降频等条目。
历史数据文件位置:
%USERPROFILE%\.dsh\data\resource-monitor\samples.jsonl
每行一个 JSON 对象,对应一分钟样本;删除该文件即可清空历史。
适用场景与注意¶
适合:在 Windows 上用 DSH desktop 长时间开发或跑本地任务,希望从侧栏回顾「是否曾长时间高 CPU / 高内存 / 降频」,而不只依赖瞬时任务管理器数值。
注意:
- 插件以当前 DSH 进程权限运行,会周期性调用 Node 与 PowerShell 读取本机性能数据;安装前应阅读 仓库源码 与 MIT 许可证,确认符合你的安全策略。
- 判定规则固定(如 CPU 85% 连续 10 分钟),不能从 README 推断存在额外配置文件项;若有需求应通过 Issue 或自行 fork。
- DSH 生态强调「一切皆插件」;社区目录页(skillhub.cn 条目)为独立站点展示,与 DeepSeek / 幻方无官方从属关系,本文仅作插件能力说明。
结尾¶
dsh-resource-monitor 把「每分钟一条、保留 30 天」的采样与「连续超阈值」规则结合起来,在 DSH 侧栏给出 CPU、内存、频率的历史视图和近 7 天异常列表,适合需要事后核对资源压力而非只盯实时数的场景。