
Security News
Deno Goes the Way of the Dinosaur
Cloudflare is acquiring Deno’s team, which will provide another year of bug fixes and security updates before ending support for the runtime.
Floating system monitor for dsh web: CPU, RAM, battery, temperature, with hot alerts.
A lightweight floating system monitor for the DeepSeek Harness (dsh) web UI. 为 DeepSeek Harness (dsh) 网页界面提供的轻量悬浮系统监控插件。
右下角一个不起眼的小胶囊,实时显示 CPU、内存、电池与温度;点击展开详情。 超温/高负载/低电量时自动变色提醒,数据只在本机回环,绝不外发。
A compact pill in the bottom-right corner showing live CPU, RAM, battery and temperature. Click it to expand details. Turns orange / red on hot alerts. Everything stays on the local loopback — no data ever leaves your machine.
| 资源 | 地址 |
|---|---|
| 📦 npm | https://www.npmjs.com/package/dsh-sysmon |
| 🐙 GitHub 仓库 | https://github.com/Kilganon725/dsh-sysmon |
| 🐛 问题反馈 / Issues | https://github.com/Kilganon725/dsh-sysmon/issues |
| 📄 更新日志 | CHANGELOG / Releases |
| Feature | 说明 | Notes |
|---|---|---|
| Floating pill | 右下角悬浮胶囊,点击展开/收起 | bottom-right, click to expand |
| CPU usage | 基于 OS tick 差值计算占用率,无外部调用 | computed from os.cpus() tick deltas |
| Memory | 已用/总量与占用百分比 | used / total + percent |
| Battery | 电量、充电中、电源状态(可用时) | percent / charging / plugged |
| CPU temperature | 平台暴露时显示(含 Windows 热区 WMI 回退) | with Windows thermal-zone fallback |
| GPU temperature | NVIDIA / AMD / Intel 等暴露温度时显示 | when the GPU driver exposes it |
| Hot alerts | 橙色/红色闪烁告警 + 低电量提醒 | orange / red blink + low-battery warn |
| Zero config | 安装即用,无需任何设置 | install & forget |
宿主端(lib/index.js)作为 cordis fiber 注册进 web 服务,采样系统指标并经同源
HTTP 路由 GET /dsh-sysmon/stats 提供(带 1.5s 缓存与并发合并);浏览器端
(lib/client.js)是手写的零依赖 bundle(无构建步骤),通过
window.__ModuleLoader__.load 注入,每 2.5s 轮询一次并渲染。不经过任何 RPC、
不连接外部网络、不申请任何权限。
┌──────────────────────────── dsh web (single process) ────────────────────────────┐
│ │
│ host half (lib/index.js) client half (lib/client.js) │
│ ┌──────────────────────────────┐ ┌───────────────────────────────┐ │
│ │ samples every ~1.5s: │ HTTP │ zero-dependency lazy bundle │ │
│ │ · os.cpus() tick deltas │◀──────▶│ GET /dsh-sysmon/stats │ │
│ │ · systeminformation: mem, │ same- │ polls every 2.5s │ │
│ │ battery, cpu temp, gpu │ origin │ renders pill + detail panel │ │
│ │ serves GET /dsh-sysmon/stats │ │ applies warn/danger classes │ │
│ └──────────────────────────────┘ └───────────────────────────────┘ │
└─────────────────────────────────────────────────────────────────────────────────────┘
npm 页面:https://www.npmjs.com/package/dsh-sysmon
# 在 dsh 中直接安装为插件
dsh plugin --profile web add dsh-sysmon
# 或者仅作为依赖安装
npm install dsh-sysmon
把 dsh-sysmon-0.1.0.tgz 下载到本地后:
dsh plugin --profile web add /path/to/dsh-sysmon-0.1.0.tgz
dsh plugin --profile web add github:Kilganon725/dsh-sysmon
# 1) 解包到 web profile 的 node_modules
mkdir -p ~/.dsh/profiles/web/node_modules/dsh-sysmon
tar -xzf dsh-sysmon-0.1.0.tgz -C ~/.dsh/profiles/web/node_modules/dsh-sysmon --strip-components=1
# 2) 在 profile 内安装依赖
cd ~/.dsh/profiles/web && pnpm add systeminformation@^5.0.0
# 3) 建插件符号链接(~/.dsh/plugins 约定)
ln -sfn ~/.dsh/profiles/web/node_modules/dsh-sysmon ~/.dsh/plugins/dsh-sysmon
# 4) 把 bundle 补丁追加到 profile 配置
cat >> ~/.dsh/profiles/web/cordis.patch.yml <<'EOF'
- insert:
- id: dsh-sysmon
name: dsh-sysmon
EOF
⚠️ 无论哪种方式,装完后都需要重启 dsh web 并刷新页面:
dsh web
安装并重启后,右下角即出现监控胶囊:
| 状态 | 条件 | 显示 |
|---|---|---|
| 🟠 橙色 warn | CPU ≥ 80% 或 CPU 温度 ≥ 75°C;或电量 ≤ 20% 且未充电 | 胶囊变橙 |
| 🔴 红色闪烁 danger | CPU ≥ 95% 或 CPU 温度 ≥ 90°C | 胶囊红色闪烁 |
宿主端在 web 服务内注册同源路由:
GET /dsh-sysmon/stats
响应示例(JSON,字段缺失时为 null):
{
"ts": 1756375200000,
"host": "MacBook-Pro.local",
"cpu": 23,
"cores": 10,
"ram": {
"total": 17179869184,
"used": 10200547328,
"percent": 59
},
"battery": {
"percent": 86,
"charging": true,
"plugged": true
},
"cpuTemp": 52,
"gpuTemp": null,
"uptime": 86400
}
| 字段 | 类型 | 说明 |
|---|---|---|
ts | number | 采样时间戳 (ms) |
host | string | 主机名 |
cpu | number | CPU 占用百分比(0–100) |
cores | number | 逻辑核心数 |
ram.total/used/percent | number | 内存字节/字节/百分比 |
battery | object | null |
cpuTemp | number | null |
gpuTemp | number | null |
uptime | number | 系统已运行秒数 |
零配置。 插件不读取任何设置项、不写任何配置。如需修改轮询间隔等参数, 请直接修改源码并重新打包(见下节)。
git clone https://github.com/Kilganon725/dsh-sysmon.git
cd dsh-sysmon
npm install # 安装依赖(systeminformation)
npm test # 运行冒烟测试(node:test,无外部依赖)
npm pack # 生成 dsh-sysmon-0.1.0.tgz
npm run dry # 预览 npm publish 会发布的内容
本地预览到真实 dsh:
dsh plugin --profile web add file:/absolute/path/to/dsh-sysmon
改动
lib/index.js(宿主)或lib/client.js(浏览器)后需要重启 dsh web 生效。
当前已发布:dsh-sysmon@0.1.1(npm)。 后续发新版:
npm version patch # 或 minor / major
npm publish # 需先 npm login(发布到 npmjs.org)
git push --tags # 推送版本 tag 到 GitHub
仓库内附带了 GitHub Actions 工作流 .github/workflows/publish.yml:
推送 v* tag 时自动测试并发布到 npm。使用前请在仓库
Settings → Secrets and variables → Actions 中添加 NPM_TOKEN(npm 上的
Automation/发布级 token)。
127.0.0.1 同源 HTTP),不上传、不记录、不分析Q: 重启后没看到胶囊?
A: 确认插件已进入 bundle 层:dsh web --dump-config 输出中应包含
- id: dsh-sysmon。然后强制刷新浏览器(Cmd+Shift+R)。
Q: 温度一直显示不可用? A: 平台/机型未暴露温度传感器。macOS 上多数 Apple Silicon 可读到, Intel 核显机型常不可用,属正常现象。
Q: 能改刷新频率吗?
A: 当前为固定值(宿主采样 1.5s 缓存,浏览器轮询 2.5s)。修改
lib/client.js 中的 POLL_MS 后重新打包即可。
Q: 和 dsh 自带的资源面板冲突吗? A: 不冲突。本插件是独立悬浮胶囊,不修改 dsh 任何原生 UI。
MIT © 2026 Kilganon725
FAQs
Floating system monitor for dsh web: CPU, RAM, battery, temperature, with hot alerts.
We found that dsh-sysmon demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 1 open source maintainer collaborating on the project.

Security News
Cloudflare is acquiring Deno’s team, which will provide another year of bug fixes and security updates before ending support for the runtime.

Security News
Anthropic’s free OSS Scanner uses Mythos and other Claude models to find open source vulnerabilities and send maintainers reports with proposed fixes.

Security News
On Front Lines’ Early Adopters: CISO podcast, Andrew Becherer shares lessons from Datadog, weighs the long-term costs of AI-built tools, and explains how founders can actually gain a CISO’s trust.