前言¶
在 DeepSeek Harness(DSH)里跑智能体或远程会话时,主机 CPU、内存是否吃满、某个进程是否异常,往往要另开系统监视器或 SSH 里敲 top。窗口一多,上下文切换成本很高。下面介绍的插件把主机性能监控收进 DSH 右侧栏:同一套 GUI 里看资源占用、温度和进程列表,必要时还能阻止远程主机因空闲进入睡眠。
这是什么¶
@xmwengxing/dsh-client-ui-sidebar-perfmon 由社区维护者 xmwengxing 发布,分类为客户端插件。它在 DSH 右侧栏提供一页实时性能面板,并在 Session 标题栏增加一个入口按钮;数据来源是运行 DSH 的那台主机(Linux、macOS 或 Windows),不引入额外运行时依赖——主机侧用 node:os 与各平台原生工具,浏览器侧复用 GUI 已有的 React。
核心功能¶
资源占用¶
右侧栏一页集中展示:
- CPU、内存、交换区:环形仪表,附带核心数与负载、已用/总量、交换区状态等辅助行。
- GPU:一条进度条,左右两半分别表示核心频率与专用显存占用。
- 当前会话工程目录大小:按需扫描;卡片标题区还可显示主机名与 uptime。
- 温度:CPU、GPU、主板、硬盘四块磁贴,按冷/温/热色阶(70 °C、85 °C 为分界);多传感器时显示最热读数,tooltip 列出覆盖的传感器。各平台能读到的传感器类型见 README 的 Platform support 表。
- 进程表:每行含 CPU 占比、常驻内存、占 RAM 比例、PID、线程数(部分平台字段不可用则显示
—)。可按 CPU、内存或名称排序,按名称或 PID 过滤,拖拽列宽(按浏览器记忆宽度);数值列优先保留,侧栏变窄时先压缩名称列。
读不到的指标不会填 0,而是显示 —,原因写在 tooltip 或页脚时间戳旁的说明里。
Windows 上的 CPU 温度¶
Windows 上若缺少 LibreHardwareMonitor,标题栏会出现 Install LHM(优先通过 winget 固定包安装);已安装但未运行则 Start LHM(需一次提升权限启动);运行后按钮消失,温度数据开始更新。tooltip 会说明 UAC 需在主机桌面确认;无 winget 时给出官方下载链接。
刷新与保活¶
默认刷新间隔:Linux 2 s、macOS 3 s、Windows 4 s;同一间隔驱动所有已打开的面板,浏览器标签页隐藏时暂停轮询。温度卡片单独使用更慢的复用周期(Windows 上读温度成本较高)。
页脚 保持唤醒 开关在主机上执行:Windows 使用 SetThreadExecutionState,macOS 使用 caffeinate,Linux 使用 systemd-inhibit --what=sleep:idle(不涉及关机)。关闭时不占资源;开启时保持一个辅助进程,并在内存中保留最近 10 条事件的环形日志,不写文件。平台缺少对应工具时按钮禁用并说明原因。
环境与要求¶
- 操作系统:Linux、macOS 或 Windows(FreeBSD 等会退化为仅
node:os的有限读数,交换区与进程表等标记为不可用)。 - DeepSeek Harness
0.2.0-rc.1或兼容版本,且使用会启动@deepseek-ai/dsh-web-app的 profile(例如webprofile)。 - Node 引擎(package.json):
^22.19.0 || >=24.0.0。 - 许可证:MIT(package.json)。
安装与启用¶
在终端执行(三选一,命令来自官方 README):
# 从 npm
dsh plugin --profile web add @xmwengxing/dsh-client-ui-sidebar-perfmon
# 从本地目录
dsh plugin --profile web add /path/to/dsh-client-ui-sidebar-perfmon
# 从 git(需允许 pnpm 先执行构建)
dsh plugin --profile web add github:xmwengxing/dsh-client-ui-sidebar-perfmon
安装后重启 GUI。卸载:
dsh plugin --profile web remove @xmwengxing/dsh-client-ui-sidebar-perfmon
典型用法¶
- 完成安装并重启 GUI 后,在右侧栏引导页找到 性能监控 卡片,点击以标签页打开面板。
- 之后可用 Session 标题栏上的图标按钮打开或聚焦该标签(无文字标签;tooltip / 无障碍名称为「打开性能监控面板」/ “Open the performance monitor”)。
- 在进程表中排序、过滤,观察 CPU 或内存偏高的进程;需要长时间远程操作时,视情况打开页脚 保持唤醒。
- Windows 且需要 CPU 温度时,按标题栏 pill 提示安装或启动 LibreHardwareMonitor。
如需调快或调慢采样、限制进程行数、隐藏 GPU/温度/保活按钮或固定工程目录扫描路径,可在 profile 补丁里覆盖默认项。默认设计偏「省资源」:例如 Linux 上约每 2 秒一次 /proc 遍历,多窗口共享同一次读数。
# ~/.dsh/profiles/web/cordis.patch.yml
- id: perfmon
name: '@xmwengxing/dsh-client-ui-sidebar-perfmon'
config:
refreshIntervalMs: 1000 # 500–60000;默认 Linux 2000 / macOS 3000 / Windows 4000
processLimit: 100 # 5–500
cacheMillis: 800 # 0–10000
sampleMillis: 150 # 0–2000
projectDirEntryBudget: 50000 # 100–1000000
projectDirMaxDirs: 12 # 1–100
temperatureIntervalMs: 15000 # 2000–600000
gpuIntervalMs: 4000 # 500–60000;默认可随 refreshIntervalMs
# gpu: false
# temperature: false
# keepAwake: false
# projectDir: /srv/demo
# projectDir: '' # 隐藏目录大小行
README 还说明了两点读数约定:进程 CPU 按「100% = 单核」缩放(与 top 一致,多线程可超过 100%);内存「已用」按「不可用」计,可回收的 page cache 算作可用。
适用场景与注意¶
适合谁:经常在 DSH web GUI 里开发或运维、希望不离开会话就能看主机负载与进程的人;远程桌面或 SSH 隧道场景下,保活开关可减少因主机睡眠断连的情况。
权限与安全:插件以当前 DSH 进程的身份与权限在主机上读 /proc、调用 PowerShell、powermetrics 等。安装前建议阅读 GitHub 仓库 源码与 MIT 许可证;Windows 上启动 LHM、Linux/macOS 上部分温度路径可能需要提升权限或额外工具,以面板提示为准。
生态说明:DSH 采用「一切皆插件」的扩展方式;SkillHub 目录页 是社区插件索引,与 DeepSeek / 幻方无官方从属关系。
结尾¶
@xmwengxing/dsh-client-ui-sidebar-perfmon(当前 npm 包版本 0.6.0)把 CPU / 内存 / 交换区仪表、GPU 行、多类温度与可排序进程表放进 DSH 右侧栏,并可选远程防睡眠。若你已在用 web profile,按上文命令安装、重启 GUI 后即可从引导页或 Session 标题栏进入面板。
- 目录页:https://www.skillhub.cn/plugins/xmwengxing/dsh-client-ui-sidebar-perfmon
- GitHub:https://github.com/xmwengxing/dsh-client-ui-sidebar-perfmon