前言¶
在 DeepSeek Harness(DSH)里跑智能体或长时间调试时,往往能猜到本机在吃资源,却很难在 Web UI 里一眼看到占用。另开一个系统监视器窗口可以凑合,但和当前会话割裂,切窗口也打断节奏。DSH 的插件模型允许在已有界面里挂能力;dsh-sysload 把 CPU、GPU、内存三项负载直接放进 Session 顶栏,和会话工具同一行,不必再浮一层窗口。
下面介绍这个客户端插件做什么、数据从哪来、如何安装与自检。
这是什么¶
dsh-sysload 由维护者 k623615746 发布,分类为客户端插件,版本 1.0.0(见仓库 package.json),MIT 许可。它在 DeepSeek Harness Web UI 的 Session 顶栏显示三个小格:标签、百分比和一条 2 px 细条;75% 使用告警色,90% 使用错误色。悬停可看核数、内存 GiB、显存、显卡型号,以及 GPU 读数来自哪条采集路径。
插件分 Host 与 Client 两半:Host 在本机采样并暴露一份 JSON;Client 轮询并渲染。Community 目录页:https://www.skillhub.cn/plugins/k623615746/dsh-sysload;源码:https://github.com/k623615746/dsh-sysload。
核心功能¶
顶栏示意(来自 README):
CPU 37% GPU 23% MEM 77%
▬▬▬▬▬▬ ▬▬▬▬ ▬▬▬▬▬▬▬▬▬▬▬▬
三项指标的来源如下。
| 读数 | 来源 |
|---|---|
| CPU | os.cpus() 两次轮询之间的 idle/total 差值,表示「距上次轮询以来的负载」;进程内第一次采样退回开机以来的平均值 |
| 内存 | os.totalmem() 与 os.freemem() |
| GPU | nvidia-smi --query-gpu=utilization.gpu,memory.used,memory.total,name;多张卡时最忙的一张驱动进度条,显存求和。无 NVIDIA 时,Windows 退回 GPU Engine(*)\Utilization Percentage 性能计数器(单次约 7 秒,限时 25 秒,失败后停用五分钟)。两条路都不可用则显示 — |
GPU 读数若未满 1.8 秒会复用,避免重叠轮询重复拉起探测。接口不读取 query、body 或自定义 header,调用方无法通过请求参数影响上述本机命令。
Client 轮询:前台可见标签页约 2 秒一次;标签页隐藏时降为 15 秒;请求失败时指数退避,上限 20 秒;关闭标签页即停止。请求使用相对路径,在反向代理前缀或桌面壳内仍可对上路由。
隐私方面:只读本地内核计数器,有 GPU 时在本机调用 CLI;无网络上报、无遥测、不写文件。
环境与依赖¶
- DeepSeek Harness 须启用
webServer服务(Web UI)。未启用时插件不注册、界面无变化。 - CPU、内存:Node 能跑的平台均可。
- GPU:Linux / Windows 上
nvidia-smi须在 PATH;或 Windows 上 Intel/AMD 走性能计数器。macOS 上 GPU 格显示—。
安装与启用¶
在已安装 DSH CLI 的机器上执行(命令来自官方 README):
dsh plugin add github:k623615746/dsh-sysload
从本地目录安装时:
dsh plugin add file:/absolute/path/to/dsh-sysload
安装后下一次页面加载即可在 Session 顶栏看到三个小格,无需重启 Harness。
package.json 中 dsh.client 注入 @deepseek-ai/dsh-client-ui-conversation,platform 为 web,immediately 为 true,与「会话顶栏即时展示」一致。
典型用法:接口自检¶
默认由 Web UI 的 Client 轮询;需要核对 Host 是否正常时,可对本地 Web 服务发起 GET(端口以你本机 webServer 为准,README 示例为 56142):
curl http://127.0.0.1:56142/dsh-sysload/stats
示例响应结构:
{
"at": 1763000000000,
"cpu": { "pct": 35.5, "cores": 20 },
"mem": { "pct": 77.1, "used": 12947177472, "total": 16962281472 },
"gpu": {
"pct": 23,
"memUsed": 1509949440,
"memTotal": 8589934592,
"name": "NVIDIA GeForce RTX 3070 Laptop GPU",
"source": "nvidia-smi"
}
}
gpu.source 取 nvidia-smi、perf-counter 或 unavailable 之一;机器无法提供的字段为 null。仅 GET 与 HEAD 有响应(其他方法返回 405,且 allow: GET, HEAD);响应头为 cache-control: no-store。
经上述步骤,可在不依赖顶栏 UI 的情况下确认采样逻辑是否正常。
适用场景与注意¶
适合:在本机或内网 DSH Web UI 中开发、调试智能体时,需要轻量、与会话同屏的系统负载提示,而不想常驻独立监视器。
注意:
- 插件以当前 DSH 进程权限运行;安装前建议通读仓库源码与 MIT 许可证,确认与本机安全策略一致。
- Windows 非 NVIDIA 路径依赖性能计数器,单次较慢且有失败退避;不适合把该格当作毫秒级实时仪表。
- 社区目录(SkillHub)与 DeepSeek / 幻方无官方从属关系;DSH 生态以「一切皆插件」为常见做法,本插件是社区贡献,而非官方应用商店内置项。
结尾¶
dsh-sysload 把 CPU、GPU、内存三项负载嵌进 Session 顶栏:Host 本机采样、Client 按可见性调节轮询,无对外上报。若要在 Harness 里顺手看机器是否顶满,可按 README 安装并在顶栏或 GET /dsh-sysload/stats 验证。