← 返回列表
未验证
对话完成或需批准时推送浏览器桌面通知
尚未跑自动兼容性验证,可查看页面内的依赖与入口分析。 · 最近上游提交 2026/8/18 · 已提供中文文档
DeepSeek Harness (dsh) 的浏览器桌面通知——在回合完成或需要审批时获得通知
综合分
28.6
GitHub 分
28.6
用户评分
—
★ Stars
2
周下载量
—
安装插件(需先安装 dsh CLI 引擎:npm install -g @deepseek-ai/dsh)
dsh plugin --profile web add pedesdestiny/dsh-notify该插件未发布到 npm,走 GitHub 源安装(pnpm 若拦截 prepare 脚本,按其提示在 pnpm-workspace.yaml 的 allowBuilds 中放行后重跑)
数据截至 2026/9/16(元数据每日更新 · 实装验证按队列轮转,单条结论的验证时间见上方)
用户评分
还没有人投票,来当第一个
订阅周报,不错过优质插件更新
每周一封 · 高评分插件 + 新用户活动
README
dsh-notify 一个 DeepSeek Harness (dsh) Web GUI 插件,当对话完成或智能体等待你确认时发送浏览器桌面通知。 不用再反复查看长时间运行的任务——在另一个窗口工作,让系统托盘告诉你智能体何时完成或需要批准。 功能 | 触发条件 | 通知 | |---|---| | 回合完成(running → idle) | “对话完成” + 会话标题 | | 工具权限批准 | “等待批准” + 会话标题 | | 计划审查 | “等待计划审批” + 会话标题 | | 智能体提问(ask_user_question) | “等待回答” + 会话标题 | - 噪声门控 —— 仅当页面隐藏或受影响的会话不是当前选中的会话时才通知 - 点击聚焦 —— 点击通知会聚焦窗口;10 秒后自动关闭 - 覆盖所有会话 —— 监视完整会话列表,而不仅仅是打开的会话 - 静默降级 —— 权限被拒绝或缺少 Notification API 时绝不报错 - 零宿主开销 —— 宿主部分为空占位符;纯 JavaScript,无需构建步骤 安装 从 git 安装(无需构建步骤,无需 allowBuilds) dsh plugin --profile web add github:pedesdestiny/dsh-notify 或本地检出 dsh plugin --profile web add /path/to/dsh-notify 重启以加载 dsh --profile web 打开 http://127.0.0.1:3080 并允许通知权限提示。如果你之前拒绝了,请通过浏览器的站点设置重新启用(锁形图标 → 通知)。 工作原理 ┌─ dsh 宿主 ────────────────────────────────────┐ │ cordis.patch.yml → 插入一行 Loader │ │ index.js → 空(占位符) │ └──────────────┬────────────────────────────────┘ │ dsh.client 声明 → │ bundle 注入 window.__DSH_BOOT__ ┌──────────────▼────────────────────────────────┐ │ 浏览器 │ │ client.js → 注册到 shell.overlay 插槽 │ │ └─ 不可见组件,useSessions 监视 │ │ 所有会话 │ │ ├─ running 边沿 → 完成通知 │ │ └─ pending 边沿 → 确认通知 │ └────────────────────────────────────────────────┘ - client.js —— 浏览器部分:一个不可见的 React 组件,挂载在始终渲染的 shell.overlay 插槽中。它通过标准的 useSessions hook 监视会话列表快照,检测 running / pendingInteraction 边沿,并触发 Notification API - index.js —— 用于 Loader 行的空宿主占位符 - cordis.patch.yml —— 插入插件行的 bundle 层 - package.json —— 声明 dsh.bundle 和 dsh.client(依赖 dsh-client-runtime / dsh-client-ui-layout) 限制 - 需要 GUI 标签页保持打开(后台标签页也可以);浏览器完全关闭时不会通知 - 权限按站点源授予(127.0.0.1:3080) - 首个快照作为基线:在页面加载前已完成的会话不会发出通知 许可证 MIT dsh-notify(中文) DeepSeek Harness (dsh) Web GUI 插件:在对话完成或等待用户确认时,向你的操作系统发送浏览器桌面通知。 挂后台跑长任务、切去别的窗口工作时,不必再频繁回头检查对话状态——任务跑完或 Agent 需要你批准操作时,系统右下角会弹出通知。 功能 | 触发时机 | 通知内容 | |---|---| | 对话完成(会话 running → idle) | 「对话完成」+ 会话标题 | | 工具权限批准(approval) | 「等待批准」+ 会话标题 | | 计划审批(plan review) | 「等待计划审批」+ 会话标题 | | Agent 提问(ask_user_question) | 「等待回答」+ 会话标题 | 特性: - 免打扰门槛 — 仅当页面处于后台,或受影响的会话不是当前选中的会话时才通知;你正盯着看的对话不会打扰你 - 点击聚焦 — 点击通知回到浏览器窗口 - 自动关闭 — 通知 10 秒后自动消失 - 多会话覆盖 — 监听全部会话(含后台会话),不只当前打开的 - 静默降级 — 浏览器通知权限被拒绝或 API 不可用时,插件保持沉默,绝不报错 - 零宿主开销 — 宿主端为空实现,全部逻辑在浏览器端;纯 JavaScript,无构建步骤 安装 方式一:git 安装(推荐) dsh plugin --profile web add github:pedesdestiny/dsh-notify 本插件无构建步骤,git 安装开箱即用,无需 allowBuilds 授权。 方式二:本地目录 dsh plugin --profile web add /path/to/dsh-notify 生效 dsh --profile web # 重启 dsh 加载插件 打开 http://127.0.0.1:3080,浏览器弹出通知权限请求时点击允许。 提示:如果之前拒绝过权限,需要在浏览器站点设置中(地址栏锁图标 → 通知)手动改为允许。 验证 1. 打开 Web GUI,切到别的窗口(让页面进入后台) 2. 发送一个任务给 Agent 3. 任务完成时,系统应弹出「对话完成」通知 4. 触发一个需要批准的操作(如越权文件写入),系统应弹出「等待批准」通知 工作原理 ┌─ dsh 宿主 ─────────────────────────────┐ │ cordis.patch.yml → 插入 Loader 行 │ │ index.js → 空实现(占位) │ └──────────────┬─────────────────────────┘ │ dsh.client 声明 → │ bundle 注入 window.__DSH_BOOT__ ┌──────────────▼─────────────────────────┐ │ 浏览器 │ │ client.js → 注册进 shell.overlay slot │ │ └─ 隐形组件 useSessions 监听全部会话 │ │ ├─ running 边沿 → 对话完成通知 │ │ └─ pending 边沿 → 等待确认通知 │ └────────────────────────────────────────┘ - client.js — 浏览器端核心:一个挂载在常驻 shell.overlay slot 的隐形 React 组件,通过标准 useSessions 钩子监听完整会话列表快照,检测 running 与 pendingInteraction 的状态边沿并触发 Notification API - index.js — 宿主端空实现,仅为 Loader 行提供合法模块 - cordis.patch.yml — bundle 层,向配置树插入插件行 - package.json — 声明 dsh.bundle(组合包)与 dsh.client(浏览器面,依赖 dsh-client-runtime / dsh-client-ui-layout) 已知限制 - 通知依赖浏览器 Notification API:GUI 标签页必须处于打开状态(后台标签可以);浏览器完全关闭时不会通知 - 通知权限按浏览器站点(127.0.0.1:3080)粒度授予 - 首次快照作为基线:页面加载时已经在运行的会话,其完成事件仍会正常通知;加载前已结束的不会 许可证 MIT
扫码进群