dsh-titlebar-feed
August 30, 2026 · View on GitHub
DSH Desktop(DeepSeek Harness 桌面版)的标题栏信息条插件,合并两项职责:
- 修复 Windows 标题栏遮挡:无边框窗口的 36px 拖拽区 + 右上角窗口按钮会盖住填满主对话列的插件(taskboard / ssh / im / better-sidebar 等)工具栏;本插件给主对话列加顶部内边距让位。
- 标题栏信息条:在腾出的顶部空间显示一条用户可配置的信息条,同一时刻显示一条 feed。
纯插件实现,不改 DSH Desktop 源码,卸载即还原。
Feed 类型
| 类型 | 说明 |
|---|---|
static 静态文本 | 直接显示文本,可长(自动分页) |
http HTTP 接口 | GET 指定 URL,可选正则提取 |
js JS 函数 | 用户 JS 函数(node:vm 沙盒),return 文本 |
system 系统指标 | CPU / 内存 / 网络上行·下行 / 磁盘 / 电池 / 开机时长 |
系统指标
- CPU / 内存 / 开机时长:Node 原生
os(CPU 用相邻采样差值,反映实时占用)。 - 网络 / 磁盘 / 电池:内嵌
systeminformation(vendor 进本插件,绕开 dsh host 端解析不了外部依赖的问题)。
快捷键
| 快捷键 | 作用 |
|---|---|
Ctrl + ↑ / ↓ | 上一条 / 下一条 feed(循环切换) |
Ctrl + ← / →(或 Ctrl + PageUp / PageDown) | 翻页(长内容) |
Ctrl + 1..9 | 直接切到第 N 条 feed |
架构
分 host / client 两半,host 抓数据、client 渲染:
- host(
index.js+lib/*):持有一组 feed,定时刷新内容,注册/dsh-titlebar-feed/state(返回当前显示文本 + 分页信息)与/dsh-titlebar-feed/action(设置/切换/翻页)。 - client(
client.js):注入标题栏让位 CSS、渲染信息条、监听快捷键,并在「设置」面板提供 feed 增删改(settings.sectionslot)。
安装
已发布到 npm,可直接安装:
npm install dsh-titlebar-feed
本地开发用 link 指向本目录即可;也可从 GitHub 仓库 djs326/dsh-titlebar-feed 克隆。
开发 / 测试
npm install
npm test # vitest:feed-runner / sandbox / system 单测
配置
feed 配置持久化在 $DSH_HOME/dsh-titlebar-feed.json($DSH_HOME 为 harness 目录),重启不丢。
说明 / 已知限制
- 同一时刻只显示一条 feed(
activeId)。 - JS 沙盒仅暴露
Date/Math/JSON/URL,不能联网 /require/process;需要联网请用「HTTP 接口」类型。 - 插件只在 DSH Desktop 壳内激活(检测
window.dshDesktop),不污染普通 dsh web。