OS-level system notifications for the dsh web GUI: popups when a turn finishes or the agent needs your approval, answer, or plan review while the page is in the background.
Install
# from GitHub (first run asks for allowBuilds approval — follow the hint, retry)
dsh plugin --profile web add github:pany0593/dsh-ui-notifications
Any plugin you install runs third-party code with your own permissions — it can read your files, use your credentials, and reach the network, and tool approvals don’t sandbox it. GitHub-sourced plugins also run build scripts at install time — pnpm blocks those until you allow them, so an install can stop with ERR_PNPM_GIT_DEP_PREPARE_NOT_ALLOWED or ERR_PNPM_IGNORED_BUILDS; dsh prints the exact key to add under allowBuilds in your profile’s pnpm-workspace.yaml, and the install works on the next run. Allowing a build is a trust decision: only install sources you trust, and pin a commit (github:owner/repo#sha).
README
This plugin publishes its README in Chinese only.
系统通知(System notifications)插件:当对话回合结束或 agent 开始等待你时——授权请求、ask-user 提问或计划审核——即使页面在后台,浏览器也会弹出 OS 级通知,让你不会错过。
这是一个 DeepSeek Harness 社区插件(GitHub topic: dsh-plugin),以独立仓库发布,独立于官方 deepseek-harness 仓库。
功能
- 回合结束提醒 — 页面隐藏时,会话 agent 停止工作(
runningtrue→false)→ 弹"对话结束"通知。 - 待处理交互提醒 — 出现授权、提问或计划审核等待 → 弹"需要授权 / 需要回答 / 需要审核计划"通知。
- 仅后台触发 — 只有
document.hidden时才弹通知,你在看页面时不会被干扰。 - 通用设置开关 — 设置 → 通用新增"系统通知"行,含启用开关和"开启系统通知"权限按钮(浏览器权限需要用户手势,按钮即入口),样式与其他偏好行一致。开关状态持久化在
localStorage。 - 排除子代理活动 — 内部编排回合不弹通知。
插件只监听浏览器端会话列表快照的实时状态变化,刷新和重连不会重放旧通知。
安装
通过 dsh plugin add(推荐)
本插件声明了 dsh.bundle manifest,可直接用官方插件安装命令:
dsh plugin --profile web add @deepseek-ai/dsh-client-ui-notifications
(npm 发布后生效;当前可从源码仓库安装:dsh plugin --profile web add pany0593/ui-system-notifications。)
手动加入 cordis.yml
在你的 dsh 配置(如 cordis.yml)中加入本插件:
- id: ui-notifications
name: '@deepseek-ai/dsh-client-ui-notifications'
安装依赖(需要与官方 dsh 客户端包同版本系,当前基于 0.1.0-rc.x):
pnpm add @deepseek-ai/dsh-client-ui-notifications
然后在 dsh web GUI 的 设置 → 通用 中打开"系统通知"开关,并点击"开启系统通知"授予浏览器通知权限。
开发
pnpm install
pnpm --filter @deepseek-ai/dsh-client-ui-notifications bundle # 构建 browser bundle
pnpm run test:gui # 客户端测试
已知限制
- 仅浏览器 Web Notifications — 原生桌面客户端需要自己的通知通道;本插件不超出网页范围。
- 单通道设计 — 尚无按类型(回合结束 vs 授权)的细分开关,行内只有一个总开关,后续可扩展。
- 权限由浏览器管理 — 若用户在浏览器中拒绝权限,插件无法再次弹请求;设置行会引导到浏览器设置。
- 独立仓库测试范围 — 本仓库只带纯逻辑测试(
tests/notifications.spec.ts);UI 组件级测试依赖官方 monorepo 的测试基建(源码解析与__ModuleLoader__注入),随官方仓库的packages/client/ui-notifications运行。
许可
MIT
Links
More in this category
alvinunreal/openpets#dsh★ 1139
Bridges DeepSeek Harness lifecycle status, errors, and approval requests to a locally running OpenPets desktop companion.
xmanrui/dsh-im★ 1026
Connect IM bots to DeepSeek Harness via QR codes or bot credentials (9 channels: Feishu, WeChat, DingTalk, WeCom, QQ, Slack, Telegram, Discord, and WhatsApp).
shaobeichen/dsh-pocket★ 845
Remote phone access to the DSH Web UI: scan a QR code for LAN or public (cloudflared tunnel) access with real-time sync, a mobile-adaptive layout, and a settings tab.
THEWOLFWALKER/dsh-notifier★ 81
Multi-channel notifications and phone control for DSH: one `notify()` API across 27 channels, event-driven pushes, phone approvals and questions, six inbound control channels, a loopback web console, multi-agent routing, and zero runtime dependencies.
omdsh-dev/dsh-notification★ 78
Desktop notifications for turn completions, with per-outcome controls and keyword rules.
omdsh-dev/dsh-open-in-vscode★ 55
Open DSH workspace directories in VS Code directly from the web GUI.
Community comments
Comments are public GitHub Discussions. Loading them connects to GitHub and Giscus; a GitHub account is required to post.