dsh-done-badge:DSH 任务完成角标(Windows 任务栏计数器)

前言

DeepSeek Harness (DSH) 在后台运行时,用户容易忽略任务完成状态。现有的通知机制或窗口内 DOM 更新在切出窗口时不够直观。dsh-done-badge 插件利用 Windows 原生任务栏接口,在窗口最小化或离开期间,持续在任务栏图标上显示任务完成数量。

插件定位

本插件由 SkuraSshly 维护,采用 MIT 许可证。它解决的核心问题是:在用户离开 DSH 窗口时,如何通过系统原生 UI 反馈后台任务完成情况。

核心功能

  • 离开期间任务完成 → 任务栏角标持续显示,数量实时累积。
  • 子代理会话不计入:一个任务启动多个子代理只 +1。
  • 切回主界面 → 角标保留 2 秒让人看清,然后消失,不再冒出。
  • 串行更新队列:角标不会因 PowerShell 完成乱序而留下旧值。
  • 零依赖:只使用系统自带 PowerShell,无需安装任何运行时。

安装与启用

通过 CLI 安装:

dsh plugin --profile web add dsh-done-badge

安装后重启 DSH Web 或桌面应用即可生效。

使用示例

  1. 发消息 → 最小化/切走 DSH。
  2. 后台每完成一个任务,任务栏 DSH 图标出现红色数字角标(完成几个显示几,持续显示)。
  3. 切回主界面 → 角标保留约 2 秒后消失、计数清零。

工作原理与注意事项

插件通过监听 session/event 的 turn/end 事件进行统计。服务端经过串行队列调用 assets/badge.ps1(零依赖脚本),利用 Windows 原生 ITaskbarList3::SetOverlayIcon 接口更新任务栏。

定位主窗口时依赖窗口标题 Deepseek Harness Desktop。如果任务栏角标未出现,可检查以下日志:
* %TEMP%\dsh-done-badge-helper.log:助手调用记录(含窗口句柄)。
* %TEMP%\dsh-done-badge-events.log:事件链日志(自动轮转 1MB)。

注意事项:
* 仅支持 Windows 任务栏角标。macOS 暂不支持原生角标,仅窗口内 DOM 角标。
* 零依赖,仅使用系统自带 PowerShell。
* 串行更新队列确保角标不会因 PowerShell 完成乱序而留下旧值。

总结

dsh-done-badge 为 DSH 提供了原生的后台任务反馈能力。配合 GitHub 源码(https://github.com/SkuraSshly/dsh-done-badge)可进一步查看实现细节。

羽毛球分组比赛记分
小程序二维码

欢迎使用《羽毛球分组比赛记分》微信小程序

小夜