Skip to content

Releases

v0.1.1

Choose a tag to compare

@HonestShine HonestShine released this 07 Nov 10:27

v0.1.1

修复

  • Windows 通知身份:通知头此前显示 AUMID 原文(com.deepseek.dsh)和默认图标。现在自动读取开始菜单里已注册的 DeepSeek Harness.lnk 的 AppUserModelID,通知头显示 DeepSeek Harness,并通过 appLogoOverride 使用安装目录的鲸鱼图标;windows.appId 默认留空即自动识别。
  • close() 用解析后的 AUMID 关闭 toast(此前用配置值,自动识别时关不掉)。

新增

  • 交互提示音:权限确认(approval/request)与提问 / 计划征询(user-questions/request)触发时播放独立提示音,与通知铃声分开配置(bundled / custom / none,可试听),不受窗口焦点限制——窗口在前台、显示应用内审批面板时也会响;800ms 去重,并静音该次交互 toast 自带提示音,避免双响。内置 assets/alert.wav(三连上行短音)。
  • 设置页「交互提示音」分组;POST /desktop-notify/preview-attention 试听接口。

变更

  • 通知服务生命周期:加载/启用时注册 dshnotify: 协议(带每实例 nonce),禁用/卸载时自动注销协议并清理轮询目录;重载不会误删新实例的注册。

安装

dsh plugin --profile web add github:HonestShine/dsh-desktop-notify#v0.1.1

桌面端(Electron 的 desktop profile)请用内置 plugin_manager 安装,或直接用下方 tgz:

dsh plugin --profile web add file:D:\Downloads\dsh-desktop-notify-0.1.1.tgz

校验

  • node test/unit.test.js:21/21 通过;node --check 全部通过。
  • 协议注册 → 注销 → 恢复 全流程实测通过;两段内置音频均为合法 RIFF/WAVE。

完整变更见 CHANGELOG.md。

v0.1.0

Choose a tag to compare

@HonestShine HonestShine released this 07 Nov 06:31

首个公开版本:系统通知里直接处理审批

dsh-desktop-notify 是 DeepSeek Harness 桌面端的原生通知插件:权限确认直接出现在系统通知里,点「拒绝 / 允许一次」即回传 Host;提问、任务完成、错误提醒与通知铃声也一并覆盖。

亮点

  • 通知内审批:Windows 用 WinRT Toast + dshnotify: 自定义协议回传(VBS 写 rendezvous JSON,Host 轮询消费),macOS 走 terminal-notifier,Linux 走 notify-send -A。
  • 前台回退:窗口在前台、用户切回前台或通知超时后,自动退回 DSH 原生审批面板。
  • 离开判定:窗口虽在前台,但超过设定秒数(默认 180 秒)无键鼠输入也按离开处理。
  • 提醒开关:提问、任务完成、错误三类提醒独立开关,可限制为仅后台;相同错误 2 秒内去重。
  • 铃声:system / bundled(原创提示音)/ custom / none 四种模式,设置页可试听。
  • 设置页铃铛图标:0.2.2+ 走原生 settings.section.icon,0.2.0/0.2.1 用 DOM 补丁,失败时回落默认齿轮。
  • 可复用服务:Host 注册 ctx.desktopNotify,其他插件可调用 show() 弹出带按钮的通知。

安装

两种方式,任选其一,装完重启 dsh web 并 F5 刷新。

方式 A:本地目录 / 压缩包

dsh plugin --profile web add link:D:\Plugins\dsh-desktop-notify
# 或拷贝安装(依赖一起装上,源目录改动不再同步)
dsh plugin --profile web add file:D:\Plugins\dsh-desktop-notify
# 也可直接装下方的 tgz 附件
dsh plugin --profile web add file:D:\Downloads\dsh-desktop-notify-0.1.0.tgz

方式 B:直接从 GitHub 安装

dsh plugin --profile web add github:HonestShine/dsh-desktop-notify
# 固定到本 Release:加 #v0.1.0

dsh plugin 会自动把带 dsh.bundle 的包加入该 profile 的 dsh.profile.bundles。桌面端(Electron)的 desktop profile 由应用管理,请改用桌面端内置的 plugin_manager 安装同一目录或 tarball。详细说明见 README「安装」。

兼容性

  • DSH 0.2.0-rc.2 / 0.2.1-rc.x / 0.2.2-rc.1(peer 依赖 @deepseek-ai/cordis ^4.0.0、@deepseek-ai/schemastery ^3.18.0)。
  • Node.js ^22.22.2 || ^24.15.0 || >=26.0.0。

本版本校验

  • node --check index.js client.js lib/winrt.js 全部通过。
  • node test/unit.test.js:18/18 通过。
  • 发布前审计:无硬编码本机路径、无 token/密钥;dshnotify: 回传的 token/decision 已加 UUID 与字符集校验,杜绝路径穿越。

已知限制

  • macOS 通知身份显示为 terminal-notifier(node-notifier 限制,无法显示为 DeepSeek Harness)。
  • Windows 自定义音频仅支持 .wav;按钮回传依赖 Host 进程存活,应用退出后历史通知按钮失效。
  • Linux 通知内按钮需要 libnotify 0.7.10+ 且守护进程支持 actions。
  • 无通知中心/历史,关闭应用后不补发。

完整变更见 CHANGELOG.md。