dsh-away-notify 插件介绍

前言

DeepSeek Harness (DSH) 采用插件化架构,允许开发者根据需求扩展功能。在智能体开发场景中,用户常因切换标签页或窗口而错过会话状态更新(如任务完成、报错、等待审批等)。dsh-away-notify 旨在解决这一问题,仅在用户离开当前页面时触发桌面通知。

安装

该插件依赖 Node.js >= 22.5。安装命令如下:

dsh plugin --profile web add github:s11phere/dsh-away-notify

注意事项:
* Windows 跨盘符问题:如果 $DSH_HOME 与插件检出目录不在同一盘符,直接安装可能导致静默失败(退出码 0 但插件无效)。Windows 用户需使用仓库提供的安装脚本或确保路径在同一盘符。
* 重启生效:安装后需重启 dsh web 并刷新浏览器页面,新增 bundle 才会被加载。

配置

配置文件位于 profile 的 cordis.patch.yml。该文件支持热监视,但新增 bundle 后首次仍需重启。关键配置项包括:

- id: dsh-away-notify
  config:
    onTurnComplete: true
    onTurnError: true
    onTurnAborted: true
    onTurnMaxTokens: true
    onApproval: true
    onQuestion: true
    onGoalComplete: true
    suppressGoalRounds: true
    rootsOnly: true
    cooldownMs: 10000
    openOnClick: true
    persistent: true
    dismissOnReturn: true

验证安装:

dsh --profile web --dump-config | grep -A2 dsh-away-notify

功能

  • 原生通知支持:原生 Windows Toast(支持 WSL 环境)或 Linux notify-send(缺失则仅记录日志),支持系统提示音。
  • 点击回跳:点击通知可回跳至对应会话,支持多 DSH 实例区分,避免误伤。
  • 防刷屏与抑制:具备冷却机制,同会话同类型通知替换而非叠加;支持根据在场状态抑制通知,页面失焦即视为离开。
  • 插件接口:支持被其他插件接管,允许其他插件声明“这条会话别打扰”或指定点击落点。

注意事项

  • Node.js 版本:需要 Node.js >= 22.5。
  • DevTools 行为:打开浏览器 DevTools 会导致页面失焦,插件会将其判定为离开状态。
  • 配置项差异:appName 配置项已声明但未实际使用;区分通知来源请修改 appId。
  • Token 安全:开启 includeToken 会导致鉴权 Token 进入本地通知历史记录。
  • 自检工具:可使用 node scripts/selftest-notify.mjs "标题" "正文" 验证通知通道是否通畅。

结语

该插件为 DSH 用户提供了仅在离开时触发的桌面通知体验,适合需要后台运行并关注状态变更的开发场景。更多细节见 GitHub 仓库。

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

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

Xiaoye