← 返回列表
未验证
主对话每轮完成时弹出 Windows 系统通知横幅
尚未跑自动兼容性验证,可查看页面内的依赖与入口分析。 · 最近上游提交 2026/8/17 · 已提供中文文档
综合分
27.7
GitHub 分
27.7
用户评分
—
★ Stars
1
周下载量
—
安装插件(需先安装 dsh CLI 引擎:npm install -g @deepseek-ai/dsh)
dsh plugin --profile web add JohnWes7/ds-notify-plugin该插件未发布到 npm,走 GitHub 源安装(pnpm 若拦截 prepare 脚本,按其提示在 pnpm-workspace.yaml 的 allowBuilds 中放行后重跑)
数据截至 2026/9/16(元数据每日更新 · 实装验证按队列轮转,单条结论的验证时间见上方)
用户评分
还没有人投票,来当第一个
订阅周报,不错过优质插件更新
每周一封 · 高评分插件 + 新用户活动
README
ds-notify-plugin 为 DeepSeek Harness (dsh) 提供 Windows 桌面 toast 通知。每当主对话完成一轮时,弹出原生 Windows toast(右下角通知横幅),这样在生成较长回复时你可以把目光移开。 DeepSeek Harness(dsh)主对话完成通知插件:主对话每轮完成后,用 Windows 系统 toast(右下角通知横幅)提醒你。 npm version License: MIT Features · 功能 - Windows only · 仅 Windows — 在其他平台上该插件不执行任何操作。 非 Windows 平台自动不生效。 - Main conversation only · 仅主对话 — 仅当根(主对话)agent 完成一轮时才弹出 toast;子代理和工作流 agent 不会触发。 只有主对话完成时通知;子代理、工作流 agent 完成不打扰。 - Conversation title in the toast · 通知带对话标题 — toast 会标明完成的是哪个对话(其自动生成或用户重命名的标题),让你一眼就知道是哪一个;尚无标题的对话保留原有固定文案。通知会写明是哪个对话完成(自动生成或手动 重命名的标题),一眼可知;尚无标题的对话保留原有固定文案。 - Debounced · 防抖合并 — 1.5 秒内的完成信号会合并为一条 toast。1.5 秒内的连续完成信号合并为一条通知。 - Zero dependencies · 零依赖 — 驱动内置的 powershell.exe + WinRT ToastNotificationManager;无需安装任何东西。调用 Windows 自带的 PowerShell + WinRT,不装任何第三方模块。 - No dsh files modified · 不修改 dsh 安装文件 — 升级 dsh 不会覆盖或破坏它。升级 dsh 不受影响。 Requirements · 前置条件 - Windows 10 / 11(使用内置的 powershell.exe) - DeepSeek Harness(dsh) - PATH 中有 pnpm(pnpm --version 必须可用) - 仅 GitHub 安装方式 · 仅 GitHub 安装方式:PATH 中有 git(pnpm 会自动克隆仓库) Install · 安装 该插件以 bundle 形式发布(dsh.bundle.patch 指向包内的 cordis.patch.yml)。dsh plugin 会自动将其追加到配置文件的 dsh.profile.bundles 中——接收方无需手动编辑组合配置,也无需手动下载或复制任何内容:一条命令即可获取并安装该包。无需手动下载或复制文件,一条命令即可安装。 安装后重启 dsh。之后每次启动时该插件都会自动加载,无需批准。安装后重启 dsh,之后每次启动自动加载。 From npm · 从 npm 安装(推荐) dsh plugin --profile web add ds-notify-plugin From GitHub · 从 GitHub 安装 dsh plugin --profile web add github:JohnWes7/ds-notify-plugin 该插件零依赖且无构建步骤,因此接收方的 pnpm-workspace.yaml 中无需放行任何内容。插件零依赖、无构建 脚本,接收方无需放行任何构建。 Local directory · 本地目录(开发 / 离线) 1. 将此目录放在一个稳定的位置。 2. 从其父目录运行: cd D:\dsh\plugin dsh plugin --profile web add link:./ds-notify-plugin - link: 会创建一个符号链接,因此代码修改会立即生效 (开发时推荐); - file:./ds-notify-plugin 会复制该目录。 要安装到其他 profile,把上面命令里的 web 换成目标 profile 名即可装到 其他 profile。 卸载 · Uninstall dsh plugin --profile web remove ds-notify-plugin 之后重启 dsh。 工作原理 · How it works 1. 插件监听 agent/status 事件(会向上冒泡到根上下文)。 2. 在 idle 时——即一轮结束,涵盖正常完成、错误和中断——它会检查 agents.roots() 并忽略子代理。 3. 1.5 秒的防抖会合并突发信号,然后通过 sessionTitle 服务从会话日志中 读取对话标题(最新的 session/title 事件;若尚无标题,toast 回退到 固定文本)。 4. 它会启动 powershell.exe(隐藏窗口,stdio: 'ignore'),通过 ToastNotificationManager 显示 WinRT toast,并将标题经 XML 转义后 写入正文行。 4. toast 使用已注册的 "Windows PowerShell" AUMID,以便非打包进程能够 可靠地显示 toast。 常见问题 · FAQ - 对话完成后没弹通知 · No toast after a turn completes 1. 检查"专注助手 / 勿扰模式",开着会吞掉 toast。 2. 检查 Windows 通知设置里 "Windows PowerShell" 应用的通知是否被禁用。 3. 确认 profile 的 bundles 列表包含本插件且已重启 dsh。 - 通知来源显示为 Windows PowerShell · The toast source shows "Windows PowerShell" — 这是有意为之(借用 PowerShell 的快捷方式身份让非打包进程的 toast 可靠显示),属正常现象。 - 通知里没有对话标题 · The toast has no conversation title — 全新对话在首轮结束时可能还没生成标题,此时保留原固定文案;若旧对话的通知 仍无标题,查看 %TEMP%\ds-notify-plugin.log,每次通知决策都会追加一行 JSON (服务/会话是否存在、解析出的标题;文件上限 64 KiB,超出时自动丢弃最旧的一半)。 开发 · Development 架构设计理由、注意事项以及测试历史参见 docs/DEVELOPMENT.md。
扫码进群