DeepSeek Harness 插件

dsh-task-notify-weijiang

DeepSeek Harness plugin: pop a desktop toast (bottom-right, like opencode) when a task / agent run completes or fails.(英文原文)

跳到安装方式

来源信息

GitHub 仓库
weijianguizhou/dsh-task-notify
最近更新
2026年8月19日
分类
自动化与任务
GitHub stars
0
载体类型
plugin
目录证据
上游声明已找到 dsh.bundle
证据路径
package.json#dsh.bundle
核对版本
0.1.0-rc.8
上游核对日期
2026-08-20

该证据由上游目录提供。本站没有安装、运行或安全审核这个插件。

安装

默认先复制一段 Prompt,让 Agent 读 GitHub 仓库和源码;需要自己装时再切到命令。

复制这段 Prompt,发给 DSH、Codex 或其他 Agent,让它先读 GitHub 仓库和源码。

请先不要安装或执行任何命令。阅读这个插件的 GitHub 仓库、README 和关键源码,然后用清楚、直接的方式回答以下问题,帮助我判断它是否适合我的需求:

1. 这个插件是什么,解决什么问题;
2. 适合哪些用户和典型使用场景;
3. 安装后如何使用,并给出一个最小使用示例;
4. 有哪些已知限制,以及隐私、安全、兼容性或维护风险;
5. 给出“推荐 / 有条件推荐 / 不推荐”的明确建议和理由。

请区分仓库明确说明、根据源码推断和未知信息。证据不足时请明确说明,不要猜测或照抄 README。

GitHub:https://github.com/weijianguizhou/dsh-task-notify
插件名:dsh-task-notify-weijiang
作者:weijianguizhou

检查来源文件

安装前先看这个插件目录里的 README 和其他文件。

文件资源管理器3 个文件
README.md来源说明 · 只读预览

dsh-task-notify

DSH(DeepSeek Harness)插件:任务/Agent 运行结束时,在桌面右下角弹出完成通知(和 opencode 一样)。

特性

  • 任务完成检测:轮询 sessions.list,检测"正在运行 → 停止"的会话(与任务看板同一机制)。
  • 结果判定:读取 sessions.historyturn/end 事件,区分成功 / 失败 / 取消。
  • 桌面通知:优先使用 Electron 渲染进程的原生 Notification(Windows 右下角系统通知);不可用时回退为页内右下角 toast。
  • 不打扰:仅当窗口不在前台时通知;4 秒轮询 + 3 秒最小通知间隔防轰炸。
  • 跟随 DSH 主题:回退 toast 的颜色取自 DSH 主题变量(--dsw-*)。
  • 零侵入:纯客户端增强 bundle,不修改任何官方代码。

安装

在目标 profile 中作为 link 依赖安装并加入 bundle 层:

dsh plugin --profile desktop add link:/path/to/dsh-task-notify

或在 profiles/<name>/package.json 手动加入依赖,并确保它出现在 dsh.profile.bundles 列表中。装完重启 DSH Desktop 即生效。

开发构建

npm install          # 安装 esbuild
npm run build:client # 构建 client bundle 到 lib/client.js
npm run check        # 语法检查

工作原理

1. 客户端 bundle(lib/client.js)以 dsh.client.platform: web 注册,由 harness 的 ClientModuleRegistry 扫描进 manifest,经 /plugins/dsh-task-notify/client.js 下发到浏览器。 2. 插件每 4s 调用 connection.api.sessions.list({}),维护"运行中会话"集合。 3. 会话从运行中变为停止时,调用 connection.api.sessions.history({ sessionId })turn/end 事件:reason.kind === 'error' 判为失败,cancelled/aborted 判为取消,否则成功。 4. 窗口未聚焦时用原生 Notification 弹通知;失败则渲染页内 .ntf-toast

目录结构

src/client/       客户端逻辑(index.js)与回退 toast 样式(styles.js)
src/host/         host 侧占位入口
scripts/          esbuild 构建脚本
lib/              构建产物(client bundle)
cordis.patch.yml  bundle 补丁:插入插件行

License

MIT