- Início
- Plugins
- Melhorias de UI
- dsh-status-bar (dsh-status-bar)
dsh-status-bar (dsh-status-bar)
wfz2006/dsh-status-bar/packages/dsh-status-bar
Floating glass status bar for DSH on Windows 11 x64: an always-on-top capsule that mirrors session progress, the current step and pending approvals from a local DSH web profile, with peek and detail views; approval cards stay read-only until DSH returns its own decision receipt, and connecting to the official Desktop app is experimental and unverified.
Instalar
dsh plugin --profile web add github:wfz2006/dsh-status-barEste plugin está no subdiretório packages/dsh-status-bar do repositório.
README
DSH Status Bar

把 DSH(DeepSeek Harness)的任务进度,装进一块会折射的桌面玻璃里。
像手机上的「灵动岛」:平时是个安静的小胶囊,有事时自己长大,没事时乖乖待着。你可以随手把它拖到屏幕任何角落、拉成顺手的大小。它只是看板 + 传话筒,不抢戏、不越权。
📖 图文介绍页:介绍.html(可直接用浏览器打开,长图版本见 介绍.png)
📖 这是什么?(30 秒版)
你让 DSH 干活的时候,是不是总得反复切窗口看「跑完没」?DSH Status Bar 就是来解决这件小事的——一块液态玻璃小悬浮窗,一直陪你在桌面上:任务跑到哪、下一步干什么、有没有事等你拍板,瞟一眼全知道。
Windows 11 优先,Electron 实现,单实例常驻,不注册托盘图标、不占任务栏。
🫧 四副面孔:从小胶囊到审批台
![]() 胶囊 · 平时:小鲸鱼标志 + 一行任务名 + 「3 轮 · 42 步」的小字进度。小到可以贴着屏幕边缘安静待着。 | ![]() 速览 · 瞟一眼:会话转录(思考 / DSH / 你)、当前步骤,外加吞吐与缓存这些小仪表。 |
![]() 紧凑详情 · 看全程:「过程 / 步骤」双标签,思考、工具调用、消息一条条排开,谁已完成谁已发送一目了然。 | ![]() 独立审批 · 拍板时:「需要你的确认 2 项」,命令先预览再点「拒绝 / 允许一次」,拿不准还能跳回 DSH 原窗口处理。 |
胶囊 288×44 DIP 起,点击长大成速览,再点进入详情;有请求待处理时点击可打开审批视图。自动展开由设置控制,默认关闭,手动尺寸不会被新请求覆盖。扩展约 320ms,收起先 80ms 内容退场、再 260ms 原生窗口连续变化。
📖 这块玻璃是「真」玻璃
普通悬浮窗只是把背景涂白假装透明;这块玻璃是真的会「看穿」它背后的东西——只取窗后一小块画面(不保存、不上传),再用同一套透镜把它折射出来:窗后内容被压弯约 13 个物理像素,边缘还带着一丝丝彩虹(RGB 色散)。

对照实验(本次实测):左「零位移」,右「开启折射与 RGB 色散」。拿真实窗后条纹做的实测,不是效果图。
普通启动时,只要原生取样助手可用且材质非实色,这项能力默认开启;设置中的“真实折射与色散”可为本次运行关闭它。隐藏窗口时暂停,显示后恢复;关闭取样或退出程序时停止。范围仅限本窗后方与最多 48 个物理像素边距,不保存、不上传。

📖 定下的死规矩:按钮永远是你按的
玻璃只是传话筒,不是代理人:
- 审批必须等 DSH 回了正式「已决定」才算数,绝不抢答;
- 断线、过期、撤销、参数看不懂?那就只读展示,绝不自动放行——任何一次批准都来自你明确的一次点击;
- 连不上就明说连不上,不装作一切正常。
📊 数字小卡片
| 189 | 4 | 13 px | 0 |
|---|---|---|---|
| 单测全绿(另有类型检查、lint、桌面构建) | 副面孔:胶囊 / 速览 / 详情 / 审批 | 真实折射偏折(实测物理像素) | 次自动放行(永远是 0) |
🚀 快速开始
要求:Windows 11 x64、Node.js、pnpm(packageManager: pnpm@12.4.1)。
pnpm install
pnpm build
pnpm start
也可以直接双击 启动预览.cmd。开发热更新用 pnpm dev。普通启动为 DSH 数据源、尚未连接;Mock 仅从调试菜单显式开启,自动化夹具使用 GLASS_SMOKE=1。连接真实 DSH 见下。
装成 DSH 插件(推荐)
不用自己 pnpm build:插件带上构建好的桌面端和 Electron 运行时,装上就能开。开启 DSH 时它会自己把官方认证链接交给玻璃,不用再手动粘贴。
# npm 包只有 870 kB,首次启动自取 155 MB 运行时(缓存到版本目录,之后不再下载)
dsh plugin --profile web add dsh-status-bar-plugin
# 或者自包含 tarball:155 MB 一次装完,运行期不再联网
dsh plugin --profile web add https://github.com/wfz2006/dsh-status-bar/releases/latest/download/dsh-status-bar.tgz
装好后重启 DSH,玻璃会跟着启动;不想要它自动开,就在 profile 补丁里写 - id: dsh-status-bar-plugin + config: { autoLaunch: false }。细节见 packages/dsh-status-bar/README.md。
隐藏窗口后按 Ctrl+Shift+G 恢复;退出悬浮窗后,在 DSH 任意会话输入 /status-bar 即可重新打开。这个命令不保存或重放认证 token,只会在需要时向当前 DSH 取一条新链接。
连接真实 DSH(实验)
设置 → 官方认证地址 → 粘贴 DSH 启动器输出的认证链接并连接。凭据只留在 Main 内存,断线即失效、不落盘。
pnpm test:live # 隔离 DSH_HOME 下的真实 Host 联调(需要本机已安装 DSH)
真实官方 Desktop 的当前任务与真实审批仍未验收,状态以 支持矩阵 与 ADR 004 为准。
🛠️ 技术积木
| 组件 | 说明 |
|---|---|
| Electron 44 + electron-vite 6 | 悬浮窗本体(apps/desktop) |
| React 19 + Zustand 5 | 界面与状态管理 |
| TypeScript(strict) | 全套类型约束 |
| 自研工作包 | protocol / bridge / adapters/dsh / adapters/mock / dsh-status-bar |
| Vitest + Playwright | 单元测试 + 桌面实测脚本 |
| ws | 本地 WebSocket 通信 |
📁 项目结构
apps/desktop Electron 悬浮窗(main / renderer / shared + 光学取样助手)
packages/protocol 自研本地协议与数据类型
packages/bridge 宿主桥接
packages/adapters dsh(真实 Host)/ mock(演示数据源)
packages/dsh-status-bar DSH 插件(bundle:启动桌面端并把认证链接交过去)
tests 单元测试
scripts 构建、验收、截图与联调脚本
docs 产品 / 架构 / 协议 / 安全 / 决策文档,界面截图在 docs/images
📚 文档索引
- 运行与验收:怎么跑、怎么验、当前材质与偏好
- 产品边界与验收条件
- 总体架构 | 自定义本地协议 | 状态模型
- DSH 集成与已验证接口 | 安全测试
- 决策记录 | 执行计划
- 开发规格 | UI 重设计规范 | 变更记录
- 界面截图见
docs/images/;验收脚本会把新证据写到本机reports/(不入库)
📌 当前状态
- 四形态 UI(任务胶囊 / 速览 / 紧凑详情 / 独立审批)已落地,偏好本地持久化,手动尺寸不被新请求覆盖。
- 150% DPI 下拖动「窗口自己越长越大」的 bug 已修复:移动只挪位置,不再改动尺寸。
- 真实折射与 RGB 色散已用真实窗后条纹实测(13 px 偏折),隐藏 / 停用 / 实色 / 异常退出均有回归;正式入口仍为 Electron。
- 审批只在收到匹配的
approval/decided后确认;提问只在权威回执后确认;无法验证的参数保持只读。 - 仍有未验区域:真实用户 Desktop 任务、模型驱动的审批/提问尚未完成实机闭环,见 ADR 004。
说明
- 主要服务 Windows 11 x64;macOS / Linux 暂不承诺。
- 不替代 DSH 本体:不写代理模型、会话引擎、工具运行器。
- 本项目以 MIT License 开源;引用或二次分发请保留版权声明。
Plugins relacionados
dsh-web (dsh-task-board)
zhu1090093659/dsh-web
dsh-web (dsh-web-all)
zhu1090093659/dsh-web
dsh-web-ui (dsh-task-board)
zhu1090093659/dsh-web-ui
dsh-web-ui (dsh-web-ui-all)
zhu1090093659/dsh-web-ui



